[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-09-01T04:11:36.752489Z",
                    "start": "2026-09-01T04:11:34.134628Z"
                },
                "id": "0242ac17-0010-c7bd-2c56-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-09-01",
                                    "day": "01",
                                    "epoch": "1788235894",
                                    "epoch_int": "1788235894",
                                    "hour": "04",
                                    "iso8601": "2026-09-01T04:11:34Z",
                                    "iso8601_basic": "20260901T041134988401",
                                    "iso8601_basic_short": "20260901T041134",
                                    "iso8601_micro": "2026-09-01T04:11:34.988401Z",
                                    "minute": "11",
                                    "month": "09",
                                    "second": "34",
                                    "time": "04:11:34",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "35",
                                    "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/5e9cf7deda724bd88e9f4e7a4103f8ac/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work",
                                    "HOSTNAME": "2d72f0692154",
                                    "KUBECONFIG": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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": "610068",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-h5D4ho6JvelV/agent.610067",
                                    "TMP": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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": 3.6337890625,
                                    "1m": 4.5244140625,
                                    "5m": 3.8466796875
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 2998,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 11767,
                                        "used": 20323
                                    },
                                    "real": {
                                        "free": 2998,
                                        "total": 32090,
                                        "used": 29092
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 7729799,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871781,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661256704,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729798,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871782,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661252608,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729790,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871790,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661219840,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729788,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871792,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661211648,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729786,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871794,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661203456,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729783,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871797,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/kube",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661191168,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729779,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871801,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661174784,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729776,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871804,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661162496,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729774,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871806,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661154304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729771,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871809,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661142016,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 54840792,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 209099925,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 31120889,
                                        "inode_total": 67108864,
                                        "inode_used": 35987975,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 224627884032,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7729762,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32871818,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16274841,
                                        "inode_total": 20643840,
                                        "inode_used": 4368999,
                                        "mount": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31661105152,
                                        "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": 51899624,
                                "ansible_user_dir": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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-09-01T04:11:35.086774Z",
                            "start": "2026-09-01T04:11:34.143245Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:35.112445Z",
                            "start": "2026-09-01T04:11:35.091296Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "5e9/oss/5e9cf7deda724bd88e9f4e7a4103f8ac"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:35.162227Z",
                            "start": "2026-09-01T04:11:35.131089Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.18\nJob: atmosphere-molecule-csi-rbd\nPipeline: check\nExecutor: 2d72f0692154\nTriggered by: https://github.com/vexxhost/atmosphere/pull/4232\nEvent ID: 7c8d9670-a5ba-11f1-8bff-b5a0446c3838\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:35.212942Z",
                            "start": "2026-09-01T04:11:35.170856Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-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: instance\nHostname: np0000191672\nUsername: zuul\nDistro: Ubuntu 22.04\nProvider: yul1\nRegion: ca-ymq-1\nLabel: ubuntu-jammy\nProduct Name: OpenStack Nova\nInterface IP: 162.253.55.71\n",
                                    "zj_item": "instance"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:35.313892Z",
                            "start": "2026-09-01T04:11:35.218188Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:35.754444Z",
                            "start": "2026-09-01T04:11:35.322514Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "1bf61093c4e146efa5bd999d85922cf04aabbf4a",
                            "dest": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "1bf61093c4e146efa5bd999d85922cf04aabbf4a",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/.ansible/tmp/ansible-tmp-1788235895.7936375-84-261468135565883/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "be4f85722c889e23c9b30c1f907925b3",
                            "mode": "0644",
                            "owner": "root",
                            "size": 49603,
                            "src": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/.ansible/tmp/ansible-tmp-1788235895.7936375-84-261468135565883/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:36.752489Z",
                            "start": "2026-09-01T04:11:35.763320Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-09-01T04:11:45.643126Z",
                    "start": "2026-09-01T04:11:36.762205Z"
                },
                "id": "0242ac17-0010-c7bd-2c56-000000000011",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:36.992640Z",
                            "start": "2026-09-01T04:11:36.772402Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000018",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:37.041871Z",
                            "start": "2026-09-01T04:11:37.003687Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000019",
                        "name": "Create a new key in workspace based on build UUID"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-keygen",
                                "-t",
                                "rsa",
                                "-N",
                                "",
                                "-C",
                                "zuul-build-sshkey",
                                "-f",
                                "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.419144",
                            "end": "2026-09-01 04:11:37.886517",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_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-c7bd-2c56-00000000009c-0-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:11:37.467373",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa.pub\nThe key fingerprint is:\nSHA256:EZy+QQp0HFbD/EzntqXlXVoMtZVna581a187lQb5hOY zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|   ...+*+.     .+|\n|    .o. *o. . ..=|\n|     . +.+ o  o=o|\n|      . o.o o=o==|\n|        So .o*=+O|\n|        .   oEoB=|\n|              o =|\n|               o.|\n|                .|\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:EZy+QQp0HFbD/EzntqXlXVoMtZVna581a187lQb5hOY zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|   ...+*+.     .+|",
                                "|    .o. *o. . ..=|",
                                "|     . +.+ o  o=o|",
                                "|      . o.o o=o==|",
                                "|        So .o*=+O|",
                                "|        .   oEoB=|",
                                "|              o =|",
                                "|               o.|",
                                "|                .|",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-c7bd-2c56-00000000009c-0-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:37.942857Z",
                            "start": "2026-09-01T04:11:37.062650Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:37.985174Z",
                            "start": "2026-09-01T04:11:37.951091Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000009d",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:38.025369Z",
                            "start": "2026-09-01T04:11:38.000867Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000bc",
                        "name": "Remove previously added zuul-build-sshkey"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyf5+UFD6nUn7BVPKx9DFVa9bp8ScwXIqvsccOS3KD93LfCPEKb6oCyFLBUZ6fgeLI/k6igpxh14f8tJ1Pu0w9dQ/bTtWzzlwVvgco4bMrd5TCaQzns5wUnhOkXWz1fgABdv6NG4wo3A6cxrVb6TdwNyNNqOrar5k+eioRpJTi/S35G3lkXTtFPHgS0Fg9AB0b2NTefTug2feGvC5Xw2ODSShvIPigNW5ReCLt8Zger9/bbLEhoN5eH7GwAvvazljgOS2Kfu6I+RqyR7ShMU7JOILCw9GaizlZ5VYIg8tNGzYcf3yZ0INaV52OzLO9BfuJHWRIrrWCpdxvEVyW4Tb70GtTsYOZMoeThSdNfoxDswKx0pWefd6dx1XJQKaFceBvJ/uwEdZOAys/tkYJCLGY+4Tk1x6D1+FaxOC7oBGGoHmOCkT/uyPRnDnMNRqQ40ssPaJdLnpwnaM6TF3yxU8+91X6WabQkSCpIIXEnpA0esR1z0rWbxRJIrDP7HqBlu0= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyf5+UFD6nUn7BVPKx9DFVa9bp8ScwXIqvsccOS3KD93LfCPEKb6oCyFLBUZ6fgeLI/k6igpxh14f8tJ1Pu0w9dQ/bTtWzzlwVvgco4bMrd5TCaQzns5wUnhOkXWz1fgABdv6NG4wo3A6cxrVb6TdwNyNNqOrar5k+eioRpJTi/S35G3lkXTtFPHgS0Fg9AB0b2NTefTug2feGvC5Xw2ODSShvIPigNW5ReCLt8Zger9/bbLEhoN5eH7GwAvvazljgOS2Kfu6I+RqyR7ShMU7JOILCw9GaizlZ5VYIg8tNGzYcf3yZ0INaV52OzLO9BfuJHWRIrrWCpdxvEVyW4Tb70GtTsYOZMoeThSdNfoxDswKx0pWefd6dx1XJQKaFceBvJ/uwEdZOAys/tkYJCLGY+4Tk1x6D1+FaxOC7oBGGoHmOCkT/uyPRnDnMNRqQ40ssPaJdLnpwnaM6TF3yxU8+91X6WabQkSCpIIXEnpA0esR1z0rWbxRJIrDP7HqBlu0= 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-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:38.480073Z",
                            "start": "2026-09-01T04:11:38.035143Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000bd",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "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-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:38.700047Z",
                            "start": "2026-09-01T04:11:38.491273Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "5b601e64bf64107423219b3e3110cbe5c8d7b38f",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "5b601e64bf64107423219b3e3110cbe5c8d7b38f",
                                    "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-1788235898.7537413-190-131590869704375/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "bc27142b3d206a10f62e33784611e5fb",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1788235898.7537413-190-131590869704375/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:39.229716Z",
                            "start": "2026-09-01T04:11:38.707546Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "5f72e27720b4b2263ba502cb0d73ccab507d9442",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "5f72e27720b4b2263ba502cb0d73ccab507d9442",
                                    "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-1788235899.2885847-200-44452161750942/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "05f4147447ad88246be3959a51f1058c",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1788235899.2885847-200-44452161750942/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:39.754854Z",
                            "start": "2026-09-01T04:11:39.236382Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000c0",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:39.787358Z",
                            "start": "2026-09-01T04:11:39.762432Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000009e",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/etc/zuul/id_rsa"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:40.159907Z",
                            "start": "2026-09-01T04:11:39.799023Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa"
                            ],
                            "delta": "0:00:00.013609",
                            "end": "2026-09-01 04:11:40.395734",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_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-c7bd-2c56-0000000000ab-0-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:11:40.382125",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/5e9cf7deda724bd88e9f4e7a4103f8ac_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-c7bd-2c56-0000000000ab-0-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:40.435126Z",
                            "start": "2026-09-01T04:11:40.170744Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:40.790852Z",
                            "start": "2026-09-01T04:11:40.439910Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000ac",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:40.821379Z",
                            "start": "2026-09-01T04:11:40.795592Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-0000000000ad",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-c7bd-2c56-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:41.186027Z",
                            "start": "2026-09-01T04:11:40.836993Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000001d",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "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-c7bd-2c56-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:44.584618Z",
                            "start": "2026-09-01T04:11:41.192017Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-00000000001e",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "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-c7bd-2c56-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:45.141385Z",
                            "start": "2026-09-01T04:11:44.596539Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000022",
                        "name": "Empty Zuul Output directories by removing them"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "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-c7bd-2c56-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:45.643126Z",
                            "start": "2026-09-01T04:11:45.151086Z"
                        },
                        "id": "0242ac17-0010-c7bd-2c56-000000000024",
                        "name": "Ensure Zuul Output directories exist"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "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-09-01T04:11:58.531812Z",
                    "start": "2026-09-01T04:11:46.519636Z"
                },
                "id": "0242ac17-0010-9dd8-ddef-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "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-1788235906.5721161-5-89691824564925/uv-x86_64-unknown-linux-gnukd2n6c2p.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-1788235906.5721161-5-89691824564925/uv-x86_64-unknown-linux-gnukd2n6c2p.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-9dd8-ddef-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:48.951702Z",
                            "start": "2026-09-01T04:11:46.531989Z"
                        },
                        "id": "0242ac17-0010-9dd8-ddef-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.011284",
                            "end": "2026-09-01 04:11:49.328556",
                            "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-9dd8-ddef-000000000008-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:11:49.317272",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-9dd8-ddef-000000000008-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-9dd8-ddef-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:49.495720Z",
                            "start": "2026-09-01T04:11:48.977232Z"
                        },
                        "id": "0242ac17-0010-9dd8-ddef-000000000008",
                        "name": "Print version"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "molecule_install_galaxy_sibling_collections",
                            "changed": true,
                            "checkouts": [
                                {
                                    "changed": true,
                                    "name": "ansible.netcommon",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.netcommon",
                                    "tag": "1.2.0"
                                },
                                {
                                    "changed": true,
                                    "name": "ansible.posix",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.posix",
                                    "tag": "1.6.0"
                                },
                                {
                                    "changed": false,
                                    "name": "ansible.utils",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.utils",
                                    "tag": "v6.1.0"
                                },
                                {
                                    "changed": true,
                                    "name": "atmosphere.common",
                                    "path": "/home/zuul/src/github.com/vexxhost/atmosphere.common",
                                    "tag": "v0.7.0"
                                },
                                {
                                    "changed": true,
                                    "name": "community.crypto",
                                    "path": "/home/zuul/src/github.com/ansible-collections/community.crypto",
                                    "tag": "2.2.3"
                                },
                                {
                                    "changed": true,
                                    "name": "community.general",
                                    "path": "/home/zuul/src/github.com/ansible-collections/community.general",
                                    "tag": "7.3.0"
                                },
                                {
                                    "changed": true,
                                    "name": "community.mysql",
                                    "path": "/home/zuul/src/github.com/ansible-collections/community.mysql",
                                    "tag": "3.6.0"
                                },
                                {
                                    "changed": true,
                                    "name": "kubernetes.core",
                                    "path": "/home/zuul/src/github.com/ansible-collections/kubernetes.core",
                                    "tag": "2.4.0"
                                },
                                {
                                    "changed": true,
                                    "name": "openstack.cloud",
                                    "path": "/home/zuul/src/opendev.org/openstack/ansible-collections-openstack",
                                    "tag": "2.6.0"
                                },
                                {
                                    "changed": true,
                                    "name": "vexxhost.ceph",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-ceph",
                                    "tag": "v4.2.0"
                                },
                                {
                                    "changed": true,
                                    "name": "vexxhost.containers",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-containers",
                                    "tag": "v1.6.8"
                                },
                                {
                                    "changed": true,
                                    "name": "vexxhost.kubernetes",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "tag": "v3.3.0"
                                }
                            ],
                            "installed": [
                                {
                                    "in_build_refs": false,
                                    "name": "ansible.netcommon",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.netcommon",
                                    "spec": "1.2.0",
                                    "tag": "1.2.0",
                                    "version": "1.2.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "ansible.posix",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.posix",
                                    "spec": "1.6.0,>=1.6.0",
                                    "tag": "1.6.0",
                                    "version": "1.6.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "ansible.utils",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.utils",
                                    "spec": ">=2.9.0,>=6.0.0",
                                    "tag": "v6.1.0",
                                    "version": "6.1.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "atmosphere.common",
                                    "path": "/home/zuul/src/github.com/vexxhost/atmosphere.common",
                                    "spec": ">=0.7.0",
                                    "tag": "v0.7.0",
                                    "version": "0.7.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "community.crypto",
                                    "path": "/home/zuul/src/github.com/ansible-collections/community.crypto",
                                    "spec": "2.2.3,>=2.2.3",
                                    "tag": "2.2.3",
                                    "version": "2.2.3"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "community.general",
                                    "path": "/home/zuul/src/github.com/ansible-collections/community.general",
                                    "spec": "7.3.0,>=4.5.0",
                                    "tag": "7.3.0",
                                    "version": "7.3.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "community.mysql",
                                    "path": "/home/zuul/src/github.com/ansible-collections/community.mysql",
                                    "spec": "3.6.0",
                                    "tag": "3.6.0",
                                    "version": "3.6.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "kubernetes.core",
                                    "path": "/home/zuul/src/github.com/ansible-collections/kubernetes.core",
                                    "spec": "2.4.0,>=2.4.0,>=2.3.2",
                                    "tag": "2.4.0",
                                    "version": "2.4.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "openstack.cloud",
                                    "path": "/home/zuul/src/opendev.org/openstack/ansible-collections-openstack",
                                    "spec": ">=2.0.0",
                                    "tag": "2.6.0",
                                    "version": "2.6.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "vexxhost.ceph",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-ceph",
                                    "spec": ">=3.2.0",
                                    "tag": "v4.2.0",
                                    "version": "4.2.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "vexxhost.containers",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-containers",
                                    "spec": ">=1.1.1,>=1.6.0",
                                    "tag": "v1.6.8",
                                    "version": "1.6.8"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "vexxhost.kubernetes",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "spec": ">=3.3.0,>=2.5.0",
                                    "tag": "v3.3.0",
                                    "version": "3.3.0"
                                }
                            ],
                            "invocation": {
                                "module_args": {
                                    "build_refs": [
                                        {
                                            "branch": "main",
                                            "change": "4232",
                                            "change_message": "feat(ironic): complete Kubernetes console provider support\n\n## Summary\n\n- complete the Ironic Kubernetes VNC console provider integration\n- stage noVNC browser assets without modifying application JavaScript at runtime\n- provide the dynamic console Pod/Secret template, dedicated-namespace RBAC, and an enabled-by-default RFB NetworkPolicy when the feature is selected\n- install `kubectl` in conductor Pods when the Kubernetes provider is enabled\n- expose a distinct noVNC endpoint and role configuration through Atmosphere variables\n- require operator-supplied console backend overrides to be complete digest references\n- make dynamic Pod scheduling, image-pull, probe, resource, and scratch-volume controls configurable\n- fail safely when disabling the feature while provider-owned Pods or Secrets remain, and remove the role-owned noVNC Ingress when disable is safe\n\nThe feature remains disabled by default. No image catalog entry or image build input is changed by this pull request.\n\n## Why the original design is insufficient\n\nThe original provider integration was functional but did not establish a safe production contract:\n\n1. Dynamic BMC credential Secrets and console Pods could fall back to the shared Helm release namespace. The chart now requires an explicit namespace; Atmosphere creates and selects `{{ ironic_helm_release_namespace }}-ironic-vnc` by default.\n2. The RFB NetworkPolicy existed but the role did not enable it, leaving TCP/5900 reachable according to the cluster's ambient policy. It is now enabled by default whenever the Kubernetes console provider is enabled, with an explicit opt-out.\n3. The noVNC hostname inherited the Ironic API hostname, allowing two Ingresses to claim the same host and path. The default is now derived as a distinct `baremetal-console` hostname and the role validates endpoint separation.\n4. Pod existence did not prove that the backend was listening. The generic template now provides TCP startup and readiness probes on the RFB port.\n5. Private registries and topology-constrained BMC networks could not be expressed. Image pull secrets, annotations, node selection, affinity, tolerations, topology spread, priority/runtime classes, resources, and scratch volumes are now configurable.\n6. Disabling the feature only skipped the noVNC Ingress task. The role now reconciles that Ingress absent and refuses disable while labelled dynamic Pods or Secrets remain.\n7. Digest validation previously accepted any string containing `@sha256:`. It now requires a complete 64-character lowercase SHA-256 reference for console backend and overridden browser-assets images.\n8. The checked-in chart and its consolidated vendor patch could drift. The patch is regenerated from the chart baseline and verified to reproduce `charts/ironic` byte-for-byte.\n\nThe NetworkPolicy is deliberately ingress-only. It permits the Ironic noVNC proxy Pods to connect to dynamic RFB Pods; it does not define OpenStack console authorization or make a console read-only. OpenStack/Ironic authorization remains above this Kubernetes transport boundary.\n\n## Stack and ownership\n\n- this branch incorporates and supersedes the focused Ironic noVNC foundation from #3811 on current `main`\n- chart implementation: https://review.opendev.org/c/openstack/openstack-helm/+/997340\n- OpenStack-Helm owns the deployer-neutral `console.namespace` template contract\n- Atmosphere owns namespace creation/defaulting, endpoint validation, lifecycle reconciliation, and values mapping\n- upstream Ironic owns provider-side wait-for-listen and partial-apply cleanup; those are not implemented by this PR\n\n## Validation\n\n- `git diff --check`\n- `go test ./roles/ironic/...`\n- `helm lint charts/ironic`\n- Helm 3 strict unit tests: 2 console tests, 2 priority-class tests, and 2 runtime-class tests passed\n- default-disabled render contains no console Pod template, console RBAC, or console NetworkPolicy\n- missing namespace is rejected when the Kubernetes provider is enabled\n- separate-namespace render verifies Secret, Pod, Role, RoleBinding, and NetworkPolicy placement and the `application=ironic,component=novncproxy` source selector\n- consolidated Ironic chart patch applies to its recorded baseline and reproduces the checked-in chart byte-for-byte\n- chart image tags, Atmosphere image catalog inputs, and image-build inputs are unchanged\n- `ansible-lint roles/ironic` reports no failures or warnings\n\nThe repository-wide Go test was also run locally. Changed packages passed; unrelated image-manifest tests assume a Linux target and fail on Darwin/arm64, and Prometheus rule tests require `promtool`, which was not installed on the workstation. CI remains authoritative for those platform/tool-dependent suites.\n\n",
                                            "change_url": "https://github.com/vexxhost/atmosphere/pull/4232",
                                            "commit_id": "73ed0bc21ea0bafd1693f740ebce863c813b8993",
                                            "patchset": "73ed0bc21ea0bafd1693f740ebce863c813b8993",
                                            "project": {
                                                "canonical_hostname": "github.com",
                                                "canonical_name": "github.com/vexxhost/atmosphere",
                                                "name": "vexxhost/atmosphere",
                                                "short_name": "atmosphere",
                                                "src_dir": "src/github.com/vexxhost/atmosphere"
                                            },
                                            "src_dir": "src/github.com/vexxhost/atmosphere",
                                            "topic": null
                                        },
                                        {
                                            "branch": "main",
                                            "change": "4232",
                                            "change_message": "feat(ironic): complete Kubernetes console provider support\n\n## Summary\n\n- complete the Ironic Kubernetes VNC console provider integration\n- stage noVNC browser assets without modifying application JavaScript at runtime\n- provide the dynamic console Pod/Secret template, dedicated-namespace RBAC, and an enabled-by-default RFB NetworkPolicy when the feature is selected\n- install `kubectl` in conductor Pods when the Kubernetes provider is enabled\n- expose a distinct noVNC endpoint and role configuration through Atmosphere variables\n- require operator-supplied console backend overrides to be complete digest references\n- make dynamic Pod scheduling, image-pull, probe, resource, and scratch-volume controls configurable\n- fail safely when disabling the feature while provider-owned Pods or Secrets remain, and remove the role-owned noVNC Ingress when disable is safe\n\nThe feature remains disabled by default. No image catalog entry or image build input is changed by this pull request.\n\n## Why the original design is insufficient\n\nThe original provider integration was functional but did not establish a safe production contract:\n\n1. Dynamic BMC credential Secrets and console Pods could fall back to the shared Helm release namespace. The chart now requires an explicit namespace; Atmosphere creates and selects `{{ ironic_helm_release_namespace }}-ironic-vnc` by default.\n2. The RFB NetworkPolicy existed but the role did not enable it, leaving TCP/5900 reachable according to the cluster's ambient policy. It is now enabled by default whenever the Kubernetes console provider is enabled, with an explicit opt-out.\n3. The noVNC hostname inherited the Ironic API hostname, allowing two Ingresses to claim the same host and path. The default is now derived as a distinct `baremetal-console` hostname and the role validates endpoint separation.\n4. Pod existence did not prove that the backend was listening. The generic template now provides TCP startup and readiness probes on the RFB port.\n5. Private registries and topology-constrained BMC networks could not be expressed. Image pull secrets, annotations, node selection, affinity, tolerations, topology spread, priority/runtime classes, resources, and scratch volumes are now configurable.\n6. Disabling the feature only skipped the noVNC Ingress task. The role now reconciles that Ingress absent and refuses disable while labelled dynamic Pods or Secrets remain.\n7. Digest validation previously accepted any string containing `@sha256:`. It now requires a complete 64-character lowercase SHA-256 reference for console backend and overridden browser-assets images.\n8. The checked-in chart and its consolidated vendor patch could drift. The patch is regenerated from the chart baseline and verified to reproduce `charts/ironic` byte-for-byte.\n\nThe NetworkPolicy is deliberately ingress-only. It permits the Ironic noVNC proxy Pods to connect to dynamic RFB Pods; it does not define OpenStack console authorization or make a console read-only. OpenStack/Ironic authorization remains above this Kubernetes transport boundary.\n\n## Stack and ownership\n\n- this branch incorporates and supersedes the focused Ironic noVNC foundation from #3811 on current `main`\n- chart implementation: https://review.opendev.org/c/openstack/openstack-helm/+/997340\n- OpenStack-Helm owns the deployer-neutral `console.namespace` template contract\n- Atmosphere owns namespace creation/defaulting, endpoint validation, lifecycle reconciliation, and values mapping\n- upstream Ironic owns provider-side wait-for-listen and partial-apply cleanup; those are not implemented by this PR\n\n## Validation\n\n- `git diff --check`\n- `go test ./roles/ironic/...`\n- `helm lint charts/ironic`\n- Helm 3 strict unit tests: 2 console tests, 2 priority-class tests, and 2 runtime-class tests passed\n- default-disabled render contains no console Pod template, console RBAC, or console NetworkPolicy\n- missing namespace is rejected when the Kubernetes provider is enabled\n- separate-namespace render verifies Secret, Pod, Role, RoleBinding, and NetworkPolicy placement and the `application=ironic,component=novncproxy` source selector\n- consolidated Ironic chart patch applies to its recorded baseline and reproduces the checked-in chart byte-for-byte\n- chart image tags, Atmosphere image catalog inputs, and image-build inputs are unchanged\n- `ansible-lint roles/ironic` reports no failures or warnings\n\nThe repository-wide Go test was also run locally. Changed packages passed; unrelated image-manifest tests assume a Linux target and fail on Darwin/arm64, and Prometheus rule tests require `promtool`, which was not installed on the workstation. CI remains authoritative for those platform/tool-dependent suites.\n\n",
                                            "change_url": "https://github.com/vexxhost/atmosphere/pull/4232",
                                            "commit_id": "73ed0bc21ea0bafd1693f740ebce863c813b8993",
                                            "patchset": "73ed0bc21ea0bafd1693f740ebce863c813b8993",
                                            "project": {
                                                "canonical_hostname": "github.com",
                                                "canonical_name": "github.com/vexxhost/atmosphere",
                                                "name": "vexxhost/atmosphere",
                                                "short_name": "atmosphere",
                                                "src_dir": "src/github.com/vexxhost/atmosphere"
                                            },
                                            "topic": null
                                        }
                                    ],
                                    "collections_path": "/home/zuul/.ansible/collections",
                                    "executable": "uv",
                                    "project_dir": "src/github.com/vexxhost/atmosphere",
                                    "projects": [
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/ansible.netcommon",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "3c1482f295d0746033db268aad986bc1648d20f8",
                                            "name": "ansible-collections/ansible.netcommon",
                                            "required": true,
                                            "short_name": "ansible.netcommon",
                                            "src_dir": "src/github.com/ansible-collections/ansible.netcommon"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/ansible.posix",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "20699d7184e21cec7be80212c96a6cbe373f718d",
                                            "name": "ansible-collections/ansible.posix",
                                            "required": true,
                                            "short_name": "ansible.posix",
                                            "src_dir": "src/github.com/ansible-collections/ansible.posix"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/ansible.utils",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "eb828fcea5d1edeba76cd8efee4f35520b7b8fb5",
                                            "name": "ansible-collections/ansible.utils",
                                            "required": true,
                                            "short_name": "ansible.utils",
                                            "src_dir": "src/github.com/ansible-collections/ansible.utils"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/community.crypto",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "f443c1b56eb61ae4672ec5af8e15dbf6d9060c06",
                                            "name": "ansible-collections/community.crypto",
                                            "required": true,
                                            "short_name": "community.crypto",
                                            "src_dir": "src/github.com/ansible-collections/community.crypto"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/community.general",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "60972bc7422ba42060695353ecb54a7c5a99eef0",
                                            "name": "ansible-collections/community.general",
                                            "required": true,
                                            "short_name": "community.general",
                                            "src_dir": "src/github.com/ansible-collections/community.general"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/community.mysql",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "4cf7a3176fbd07be43459f1366e8066381df6d97",
                                            "name": "ansible-collections/community.mysql",
                                            "required": true,
                                            "short_name": "community.mysql",
                                            "src_dir": "src/github.com/ansible-collections/community.mysql"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/ansible-collections/kubernetes.core",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "d9e0218dbae23a183aef829847dfeccf0e4e7535",
                                            "name": "ansible-collections/kubernetes.core",
                                            "required": true,
                                            "short_name": "kubernetes.core",
                                            "src_dir": "src/github.com/ansible-collections/kubernetes.core"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/ansible-collection-ceph",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "44a694a80e3179c28d75180baa1a56426f987257",
                                            "name": "vexxhost/ansible-collection-ceph",
                                            "required": true,
                                            "short_name": "ansible-collection-ceph",
                                            "src_dir": "src/github.com/vexxhost/ansible-collection-ceph"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/ansible-collection-containers",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "d22923ebd40c0fd5a345318c1db90d125fb5140f",
                                            "name": "vexxhost/ansible-collection-containers",
                                            "required": true,
                                            "short_name": "ansible-collection-containers",
                                            "src_dir": "src/github.com/vexxhost/ansible-collection-containers"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/ansible-collection-kubernetes",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "7ce96efcd4d44cbf184588dd146d08ce952b57bb",
                                            "name": "vexxhost/ansible-collection-kubernetes",
                                            "required": true,
                                            "short_name": "ansible-collection-kubernetes",
                                            "src_dir": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/atmosphere",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "73ed0bc21ea0bafd1693f740ebce863c813b8993",
                                            "name": "vexxhost/atmosphere",
                                            "required": false,
                                            "short_name": "atmosphere",
                                            "src_dir": "src/github.com/vexxhost/atmosphere"
                                        },
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/atmosphere.common",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "d00ec7f88fdc7ca2ce504a7e19c4049986cdac86",
                                            "name": "vexxhost/atmosphere.common",
                                            "required": true,
                                            "short_name": "atmosphere.common",
                                            "src_dir": "src/github.com/vexxhost/atmosphere.common"
                                        },
                                        {
                                            "canonical_hostname": "opendev.org",
                                            "canonical_name": "opendev.org/openstack/ansible-collections-openstack",
                                            "checkout": "master",
                                            "checkout_description": "project default branch",
                                            "commit": "ee88cc15b87221ecabb474c7c3d0feaf6e01a7fa",
                                            "name": "openstack/ansible-collections-openstack",
                                            "required": true,
                                            "short_name": "ansible-collections-openstack",
                                            "src_dir": "src/opendev.org/openstack/ansible-collections-openstack"
                                        }
                                    ],
                                    "workspace_dir": "/home/zuul"
                                }
                            },
                            "log": [
                                "Sibling collection ansible.netcommon at /home/zuul/src/github.com/ansible-collections/ansible.netcommon",
                                "Sibling collection ansible.posix at /home/zuul/src/github.com/ansible-collections/ansible.posix",
                                "Sibling collection ansible.utils at /home/zuul/src/github.com/ansible-collections/ansible.utils",
                                "Sibling collection community.crypto at /home/zuul/src/github.com/ansible-collections/community.crypto",
                                "Sibling collection community.general at /home/zuul/src/github.com/ansible-collections/community.general",
                                "Sibling collection community.mysql at /home/zuul/src/github.com/ansible-collections/community.mysql",
                                "Sibling collection kubernetes.core at /home/zuul/src/github.com/ansible-collections/kubernetes.core",
                                "Sibling collection vexxhost.ceph at /home/zuul/src/github.com/vexxhost/ansible-collection-ceph",
                                "Sibling collection vexxhost.containers at /home/zuul/src/github.com/vexxhost/ansible-collection-containers",
                                "Sibling collection vexxhost.kubernetes at /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes",
                                "Sibling collection atmosphere.common at /home/zuul/src/github.com/vexxhost/atmosphere.common",
                                "Sibling collection openstack.cloud at /home/zuul/src/opendev.org/openstack/ansible-collections-openstack",
                                "Resolved ansible.netcommon to 1.2.0 for 1.2.0",
                                "Resolved ansible.posix to 1.6.0 for 1.6.0",
                                "Resolved ansible.utils to v6.1.0 for >=2.9.0",
                                "Resolved community.crypto to 2.2.3 for 2.2.3",
                                "Resolved community.general to 7.3.0 for 7.3.0",
                                "Resolved community.mysql to 3.6.0 for 3.6.0",
                                "Resolved kubernetes.core to 2.4.0 for 2.4.0",
                                "Resolved openstack.cloud to 2.6.0 for >=2.0.0",
                                "Resolved vexxhost.ceph to v4.2.0 for >=3.2.0",
                                "Resolved atmosphere.common to v0.7.0 for >=0.7.0",
                                "Resolved vexxhost.kubernetes to v3.3.0 for >=3.3.0,>=2.5.0",
                                "Resolved community.general to 7.3.0 for 7.3.0,>=4.5.0",
                                "Resolved ansible.utils to v6.1.0 for >=2.9.0,>=6.0.0",
                                "Resolved vexxhost.containers to v1.6.8 for >=1.1.1,>=1.6.0",
                                "Resolved kubernetes.core to 2.4.0 for 2.4.0,>=2.4.0,>=2.3.2",
                                "Resolved vexxhost.kubernetes to v3.3.0 for >=3.3.0,>=2.5.0",
                                "Resolved ansible.posix to 1.6.0 for 1.6.0,>=1.6.0",
                                "Resolved community.crypto to 2.2.3 for 2.2.3,>=2.2.3",
                                "Resolved kubernetes.core to 2.4.0 for 2.4.0,>=2.4.0,>=2.3.2",
                                "Resolved vexxhost.containers to v1.6.8 for >=1.1.1,>=1.6.0",
                                "Checked out ansible.netcommon to 1.2.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/ansible.netcommon",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'ansible.netcommon:*' to '/home/zuul/.ansible/collections/ansible_collections/ansible/netcommon'",
                                "Created collection for ansible.netcommon:* at /home/zuul/.ansible/collections/ansible_collections/ansible/netcommon",
                                "ansible.netcommon:* was installed successfully",
                                "Using CPython 3.10.12 interpreter at: /usr/bin/python3",
                                "Creating virtual environment at: .venv",
                                "   Building atmosphere @ file:///home/zuul/src/github.com/vexxhost/atmosphere",
                                "Downloading setuptools (1.1MiB)",
                                "Downloading openstacksdk (1.7MiB)",
                                "Downloading ansible-core (2.1MiB)",
                                "Downloading rjsonnet (1.2MiB)",
                                "Downloading kubernetes (1.9MiB)",
                                "Downloading netaddr (2.2MiB)",
                                "Downloading pydantic-core (2.0MiB)",
                                "Downloading pygments (1.2MiB)",
                                "Downloading cryptography (4.2MiB)",
                                "   Building pyperclip==1.9.0",
                                " Downloading rjsonnet",
                                " Downloading pydantic-core",
                                " Downloading netaddr",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading setuptools",
                                " Downloading kubernetes",
                                " Downloading ansible-core",
                                " Downloading openstacksdk",
                                "      Built pyperclip==1.9.0",
                                "      Built atmosphere @ file:///home/zuul/src/github.com/vexxhost/atmosphere",
                                "Installed 83 packages in 54ms",
                                "Checked out ansible.posix to 1.6.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/ansible.posix",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'ansible.posix:1.6.0' to '/home/zuul/.ansible/collections/ansible_collections/ansible/posix'",
                                "Created collection for ansible.posix:1.6.0 at /home/zuul/.ansible/collections/ansible_collections/ansible/posix",
                                "ansible.posix:1.6.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out ansible.utils to v6.1.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/ansible.utils",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'ansible.utils:6.1.0' to '/home/zuul/.ansible/collections/ansible_collections/ansible/utils'",
                                "Created collection for ansible.utils:6.1.0 at /home/zuul/.ansible/collections/ansible_collections/ansible/utils",
                                "ansible.utils:6.1.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out atmosphere.common to v0.7.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/atmosphere.common",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'atmosphere.common:0.7.0' to '/home/zuul/.ansible/collections/ansible_collections/atmosphere/common'",
                                "Created collection for atmosphere.common:0.7.0 at /home/zuul/.ansible/collections/ansible_collections/atmosphere/common",
                                "atmosphere.common:0.7.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out community.crypto to 2.2.3",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/community.crypto",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'community.crypto:2.2.3' to '/home/zuul/.ansible/collections/ansible_collections/community/crypto'",
                                "Created collection for community.crypto:2.2.3 at /home/zuul/.ansible/collections/ansible_collections/community/crypto",
                                "community.crypto:2.2.3 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out community.general to 7.3.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/community.general",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'community.general:7.3.0' to '/home/zuul/.ansible/collections/ansible_collections/community/general'",
                                "Created collection for community.general:7.3.0 at /home/zuul/.ansible/collections/ansible_collections/community/general",
                                "community.general:7.3.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out community.mysql to 3.6.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/community.mysql",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'community.mysql:3.6.0' to '/home/zuul/.ansible/collections/ansible_collections/community/mysql'",
                                "Created collection for community.mysql:3.6.0 at /home/zuul/.ansible/collections/ansible_collections/community/mysql",
                                "community.mysql:3.6.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out kubernetes.core to 2.4.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/kubernetes.core",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'kubernetes.core:2.4.0' to '/home/zuul/.ansible/collections/ansible_collections/kubernetes/core'",
                                "Created collection for kubernetes.core:2.4.0 at /home/zuul/.ansible/collections/ansible_collections/kubernetes/core",
                                "kubernetes.core:2.4.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out openstack.cloud to 2.6.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/opendev.org/openstack/ansible-collections-openstack",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'openstack.cloud:2.6.0' to '/home/zuul/.ansible/collections/ansible_collections/openstack/cloud'",
                                "Created collection for openstack.cloud:2.6.0 at /home/zuul/.ansible/collections/ansible_collections/openstack/cloud",
                                "openstack.cloud:2.6.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out vexxhost.ceph to v4.2.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/ansible-collection-ceph",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'vexxhost.ceph:4.2.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph'",
                                "Created collection for vexxhost.ceph:4.2.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph",
                                "vexxhost.ceph:4.2.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out vexxhost.containers to v1.6.8",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/ansible-collection-containers",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'vexxhost.containers:1.6.8' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers'",
                                "Created collection for vexxhost.containers:1.6.8 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/containers",
                                "vexxhost.containers:1.6.8 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out vexxhost.kubernetes to v3.3.0",
                                "Running: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'vexxhost.kubernetes:3.3.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes'",
                                "Created collection for vexxhost.kubernetes:3.3.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes",
                                "vexxhost.kubernetes:3.3.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12"
                            ],
                            "msg": "Sibling collection ansible.netcommon at /home/zuul/src/github.com/ansible-collections/ansible.netcommon\nSibling collection ansible.posix at /home/zuul/src/github.com/ansible-collections/ansible.posix\nSibling collection ansible.utils at /home/zuul/src/github.com/ansible-collections/ansible.utils\nSibling collection community.crypto at /home/zuul/src/github.com/ansible-collections/community.crypto\nSibling collection community.general at /home/zuul/src/github.com/ansible-collections/community.general\nSibling collection community.mysql at /home/zuul/src/github.com/ansible-collections/community.mysql\nSibling collection kubernetes.core at /home/zuul/src/github.com/ansible-collections/kubernetes.core\nSibling collection vexxhost.ceph at /home/zuul/src/github.com/vexxhost/ansible-collection-ceph\nSibling collection vexxhost.containers at /home/zuul/src/github.com/vexxhost/ansible-collection-containers\nSibling collection vexxhost.kubernetes at /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes\nSibling collection atmosphere.common at /home/zuul/src/github.com/vexxhost/atmosphere.common\nSibling collection openstack.cloud at /home/zuul/src/opendev.org/openstack/ansible-collections-openstack\nResolved ansible.netcommon to 1.2.0 for 1.2.0\nResolved ansible.posix to 1.6.0 for 1.6.0\nResolved ansible.utils to v6.1.0 for >=2.9.0\nResolved community.crypto to 2.2.3 for 2.2.3\nResolved community.general to 7.3.0 for 7.3.0\nResolved community.mysql to 3.6.0 for 3.6.0\nResolved kubernetes.core to 2.4.0 for 2.4.0\nResolved openstack.cloud to 2.6.0 for >=2.0.0\nResolved vexxhost.ceph to v4.2.0 for >=3.2.0\nResolved atmosphere.common to v0.7.0 for >=0.7.0\nResolved vexxhost.kubernetes to v3.3.0 for >=3.3.0,>=2.5.0\nResolved community.general to 7.3.0 for 7.3.0,>=4.5.0\nResolved ansible.utils to v6.1.0 for >=2.9.0,>=6.0.0\nResolved vexxhost.containers to v1.6.8 for >=1.1.1,>=1.6.0\nResolved kubernetes.core to 2.4.0 for 2.4.0,>=2.4.0,>=2.3.2\nResolved vexxhost.kubernetes to v3.3.0 for >=3.3.0,>=2.5.0\nResolved ansible.posix to 1.6.0 for 1.6.0,>=1.6.0\nResolved community.crypto to 2.2.3 for 2.2.3,>=2.2.3\nResolved kubernetes.core to 2.4.0 for 2.4.0,>=2.4.0,>=2.3.2\nResolved vexxhost.containers to v1.6.8 for >=1.1.1,>=1.6.0\nChecked out ansible.netcommon to 1.2.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/ansible.netcommon\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'ansible.netcommon:*' to '/home/zuul/.ansible/collections/ansible_collections/ansible/netcommon'\nCreated collection for ansible.netcommon:* at /home/zuul/.ansible/collections/ansible_collections/ansible/netcommon\nansible.netcommon:* was installed successfully\nUsing CPython 3.10.12 interpreter at: /usr/bin/python3\nCreating virtual environment at: .venv\n   Building atmosphere @ file:///home/zuul/src/github.com/vexxhost/atmosphere\nDownloading setuptools (1.1MiB)\nDownloading openstacksdk (1.7MiB)\nDownloading ansible-core (2.1MiB)\nDownloading rjsonnet (1.2MiB)\nDownloading kubernetes (1.9MiB)\nDownloading netaddr (2.2MiB)\nDownloading pydantic-core (2.0MiB)\nDownloading pygments (1.2MiB)\nDownloading cryptography (4.2MiB)\n   Building pyperclip==1.9.0\n Downloading rjsonnet\n Downloading pydantic-core\n Downloading netaddr\n Downloading cryptography\n Downloading pygments\n Downloading setuptools\n Downloading kubernetes\n Downloading ansible-core\n Downloading openstacksdk\n      Built pyperclip==1.9.0\n      Built atmosphere @ file:///home/zuul/src/github.com/vexxhost/atmosphere\nInstalled 83 packages in 54ms\nChecked out ansible.posix to 1.6.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/ansible.posix\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'ansible.posix:1.6.0' to '/home/zuul/.ansible/collections/ansible_collections/ansible/posix'\nCreated collection for ansible.posix:1.6.0 at /home/zuul/.ansible/collections/ansible_collections/ansible/posix\nansible.posix:1.6.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out ansible.utils to v6.1.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/ansible.utils\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'ansible.utils:6.1.0' to '/home/zuul/.ansible/collections/ansible_collections/ansible/utils'\nCreated collection for ansible.utils:6.1.0 at /home/zuul/.ansible/collections/ansible_collections/ansible/utils\nansible.utils:6.1.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out atmosphere.common to v0.7.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/atmosphere.common\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'atmosphere.common:0.7.0' to '/home/zuul/.ansible/collections/ansible_collections/atmosphere/common'\nCreated collection for atmosphere.common:0.7.0 at /home/zuul/.ansible/collections/ansible_collections/atmosphere/common\natmosphere.common:0.7.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out community.crypto to 2.2.3\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/community.crypto\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'community.crypto:2.2.3' to '/home/zuul/.ansible/collections/ansible_collections/community/crypto'\nCreated collection for community.crypto:2.2.3 at /home/zuul/.ansible/collections/ansible_collections/community/crypto\ncommunity.crypto:2.2.3 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out community.general to 7.3.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/community.general\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'community.general:7.3.0' to '/home/zuul/.ansible/collections/ansible_collections/community/general'\nCreated collection for community.general:7.3.0 at /home/zuul/.ansible/collections/ansible_collections/community/general\ncommunity.general:7.3.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out community.mysql to 3.6.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/community.mysql\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'community.mysql:3.6.0' to '/home/zuul/.ansible/collections/ansible_collections/community/mysql'\nCreated collection for community.mysql:3.6.0 at /home/zuul/.ansible/collections/ansible_collections/community/mysql\ncommunity.mysql:3.6.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out kubernetes.core to 2.4.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/ansible-collections/kubernetes.core\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'kubernetes.core:2.4.0' to '/home/zuul/.ansible/collections/ansible_collections/kubernetes/core'\nCreated collection for kubernetes.core:2.4.0 at /home/zuul/.ansible/collections/ansible_collections/kubernetes/core\nkubernetes.core:2.4.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out openstack.cloud to 2.6.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/opendev.org/openstack/ansible-collections-openstack\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'openstack.cloud:2.6.0' to '/home/zuul/.ansible/collections/ansible_collections/openstack/cloud'\nCreated collection for openstack.cloud:2.6.0 at /home/zuul/.ansible/collections/ansible_collections/openstack/cloud\nopenstack.cloud:2.6.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out vexxhost.ceph to v4.2.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/ansible-collection-ceph\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'vexxhost.ceph:4.2.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph'\nCreated collection for vexxhost.ceph:4.2.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph\nvexxhost.ceph:4.2.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out vexxhost.containers to v1.6.8\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/ansible-collection-containers\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'vexxhost.containers:1.6.8' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers'\nCreated collection for vexxhost.containers:1.6.8 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/containers\nvexxhost.containers:1.6.8 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out vexxhost.kubernetes to v3.3.0\nRunning: uv run ansible-galaxy collection install --force --no-deps --collections-path /home/zuul/.ansible/collections /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'vexxhost.kubernetes:3.3.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes'\nCreated collection for vexxhost.kubernetes:3.3.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes\nvexxhost.kubernetes:3.3.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:11:58.531812Z",
                            "start": "2026-09-01T04:11:49.508232Z"
                        },
                        "id": "0242ac17-0010-9dd8-ddef-00000000000a",
                        "name": "Install Ansible collection siblings"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "2",
    "phase": "pre",
    "playbook": "github.com/vexxhost/atmosphere-zuul-jobs/playbooks/molecule/pre.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-09-01T04:12:09.331650Z",
                    "start": "2026-09-01T04:11:59.227148Z"
                },
                "id": "0242ac17-0010-4e14-2d99-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.apt",
                            "cache_update_time": 1788235924,
                            "cache_updated": true,
                            "changed": true,
                            "diff": {},
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "name": "jq",
                                    "only_upgrade": false,
                                    "package": [
                                        "jq"
                                    ],
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": true,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            },
                            "stderr": "debconf: delaying package configuration, since apt-utils is not installed\n",
                            "stderr_lines": [
                                "debconf: delaying package configuration, since apt-utils is not installed"
                            ],
                            "stdout": "Reading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  libjq1 libonig5\nThe following NEW packages will be installed:\n  jq libjq1 libonig5\n0 upgraded, 3 newly installed, 0 to remove and 21 not upgraded.\nNeed to get 359 kB of archives.\nAfter this operation, 1087 kB of additional disk space will be used.\nGet:1 http://yul2.clouds.archive.ubuntu.com/ubuntu jammy/main amd64 libonig5 amd64 6.9.7.1-2build1 [172 kB]\nGet:2 http://yul2.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libjq1 amd64 1.6-2.1ubuntu3.2 [135 kB]\nGet:3 http://yul2.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 jq amd64 1.6-2.1ubuntu3.2 [52.5 kB]\nFetched 359 kB in 1s (567 kB/s)\nSelecting previously unselected package libonig5:amd64.\r\n(Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 30901 files and directories currently installed.)\r\nPreparing to unpack .../libonig5_6.9.7.1-2build1_amd64.deb ...\r\nUnpacking libonig5:amd64 (6.9.7.1-2build1) ...\r\nSelecting previously unselected package libjq1:amd64.\r\nPreparing to unpack .../libjq1_1.6-2.1ubuntu3.2_amd64.deb ...\r\nUnpacking libjq1:amd64 (1.6-2.1ubuntu3.2) ...\r\nSelecting previously unselected package jq.\r\nPreparing to unpack .../jq_1.6-2.1ubuntu3.2_amd64.deb ...\r\nUnpacking jq (1.6-2.1ubuntu3.2) ...\r\nSetting up libonig5:amd64 (6.9.7.1-2build1) ...\r\nSetting up libjq1:amd64 (1.6-2.1ubuntu3.2) ...\r\nSetting up jq (1.6-2.1ubuntu3.2) ...\r\nProcessing triggers for libc-bin (2.35-0ubuntu3.14) ...\r\n",
                            "stdout_lines": [
                                "Reading package lists...",
                                "Building dependency tree...",
                                "Reading state information...",
                                "The following additional packages will be installed:",
                                "  libjq1 libonig5",
                                "The following NEW packages will be installed:",
                                "  jq libjq1 libonig5",
                                "0 upgraded, 3 newly installed, 0 to remove and 21 not upgraded.",
                                "Need to get 359 kB of archives.",
                                "After this operation, 1087 kB of additional disk space will be used.",
                                "Get:1 http://yul2.clouds.archive.ubuntu.com/ubuntu jammy/main amd64 libonig5 amd64 6.9.7.1-2build1 [172 kB]",
                                "Get:2 http://yul2.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libjq1 amd64 1.6-2.1ubuntu3.2 [135 kB]",
                                "Get:3 http://yul2.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 jq amd64 1.6-2.1ubuntu3.2 [52.5 kB]",
                                "Fetched 359 kB in 1s (567 kB/s)",
                                "Selecting previously unselected package libonig5:amd64.",
                                "(Reading database ... ",
                                "(Reading database ... 5%",
                                "(Reading database ... 10%",
                                "(Reading database ... 15%",
                                "(Reading database ... 20%",
                                "(Reading database ... 25%",
                                "(Reading database ... 30%",
                                "(Reading database ... 35%",
                                "(Reading database ... 40%",
                                "(Reading database ... 45%",
                                "(Reading database ... 50%",
                                "(Reading database ... 55%",
                                "(Reading database ... 60%",
                                "(Reading database ... 65%",
                                "(Reading database ... 70%",
                                "(Reading database ... 75%",
                                "(Reading database ... 80%",
                                "(Reading database ... 85%",
                                "(Reading database ... 90%",
                                "(Reading database ... 95%",
                                "(Reading database ... 100%",
                                "(Reading database ... 30901 files and directories currently installed.)",
                                "Preparing to unpack .../libonig5_6.9.7.1-2build1_amd64.deb ...",
                                "Unpacking libonig5:amd64 (6.9.7.1-2build1) ...",
                                "Selecting previously unselected package libjq1:amd64.",
                                "Preparing to unpack .../libjq1_1.6-2.1ubuntu3.2_amd64.deb ...",
                                "Unpacking libjq1:amd64 (1.6-2.1ubuntu3.2) ...",
                                "Selecting previously unselected package jq.",
                                "Preparing to unpack .../jq_1.6-2.1ubuntu3.2_amd64.deb ...",
                                "Unpacking jq (1.6-2.1ubuntu3.2) ...",
                                "Setting up libonig5:amd64 (6.9.7.1-2build1) ...",
                                "Setting up libjq1:amd64 (1.6-2.1ubuntu3.2) ...",
                                "Setting up jq (1.6-2.1ubuntu3.2) ...",
                                "Processing triggers for libc-bin (2.35-0ubuntu3.14) ..."
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:12:09.331650Z",
                            "start": "2026-09-01T04:11:59.237934Z"
                        },
                        "id": "0242ac17-0010-4e14-2d99-000000000004",
                        "name": "Install \"jq\" for log collection"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "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-09-01T04:16:07.933286Z",
                    "start": "2026-09-01T04:12:10.075957Z"
                },
                "id": "0242ac17-0010-3afa-40cb-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.stat",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/atmosphere"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/atmosphere",
                                    "stat": {
                                        "atime": 1788235911.3871634,
                                        "attr_flags": "e",
                                        "attributes": [
                                            "extents"
                                        ],
                                        "block_size": 4096,
                                        "blocks": 8,
                                        "charset": "unknown",
                                        "ctime": 1788235910.3868518,
                                        "dev": 64513,
                                        "device_type": 0,
                                        "executable": true,
                                        "exists": true,
                                        "gid": 1000,
                                        "gr_name": "zuul",
                                        "inode": 1048065,
                                        "isblk": false,
                                        "ischr": false,
                                        "isdir": true,
                                        "isfifo": false,
                                        "isgid": false,
                                        "islnk": false,
                                        "isreg": false,
                                        "issock": false,
                                        "isuid": false,
                                        "mimetype": "unknown",
                                        "mode": "0755",
                                        "mtime": 1788235910.3868518,
                                        "nlink": 23,
                                        "path": "src/github.com/vexxhost/atmosphere",
                                        "pw_name": "zuul",
                                        "readable": true,
                                        "rgrp": true,
                                        "roth": true,
                                        "rusr": true,
                                        "size": 4096,
                                        "uid": 1000,
                                        "version": "3723213951",
                                        "wgrp": false,
                                        "woth": false,
                                        "writeable": true,
                                        "wusr": true,
                                        "xgrp": true,
                                        "xoth": true,
                                        "xusr": true
                                    }
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/atmosphere/molecule/csi/inventory"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/atmosphere/molecule/csi/inventory",
                                    "stat": {
                                        "exists": false
                                    }
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/atmosphere/extensions/molecule/csi/inventory"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/atmosphere/extensions/molecule/csi/inventory",
                                    "stat": {
                                        "exists": false
                                    }
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:12:10.803196Z",
                            "start": "2026-09-01T04:12:10.086571Z"
                        },
                        "id": "0242ac17-0010-3afa-40cb-000000000004",
                        "name": "Check inventory directories"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "checksum": "1bf61093c4e146efa5bd999d85922cf04aabbf4a",
                                    "dest": "src/github.com/vexxhost/atmosphere/inventory.yaml",
                                    "diff": [],
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_original_basename": "inventory.yaml",
                                            "attributes": null,
                                            "backup": false,
                                            "checksum": "1bf61093c4e146efa5bd999d85922cf04aabbf4a",
                                            "content": null,
                                            "dest": "src/github.com/vexxhost/atmosphere",
                                            "directory_mode": null,
                                            "follow": false,
                                            "force": true,
                                            "group": null,
                                            "local_follow": null,
                                            "mode": "0644",
                                            "owner": null,
                                            "remote_src": null,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1788235930.8778203-9-148914975128374/source",
                                            "unsafe_writes": false,
                                            "validate": null
                                        }
                                    },
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere",
                                        "stat": {
                                            "atime": 1788235911.3871634,
                                            "attr_flags": "e",
                                            "attributes": [
                                                "extents"
                                            ],
                                            "block_size": 4096,
                                            "blocks": 8,
                                            "charset": "unknown",
                                            "ctime": 1788235910.3868518,
                                            "dev": 64513,
                                            "device_type": 0,
                                            "executable": true,
                                            "exists": true,
                                            "gid": 1000,
                                            "gr_name": "zuul",
                                            "inode": 1048065,
                                            "isblk": false,
                                            "ischr": false,
                                            "isdir": true,
                                            "isfifo": false,
                                            "isgid": false,
                                            "islnk": false,
                                            "isreg": false,
                                            "issock": false,
                                            "isuid": false,
                                            "mimetype": "unknown",
                                            "mode": "0755",
                                            "mtime": 1788235910.3868518,
                                            "nlink": 23,
                                            "path": "src/github.com/vexxhost/atmosphere",
                                            "pw_name": "zuul",
                                            "readable": true,
                                            "rgrp": true,
                                            "roth": true,
                                            "rusr": true,
                                            "size": 4096,
                                            "uid": 1000,
                                            "version": "3723213951",
                                            "wgrp": false,
                                            "woth": false,
                                            "writeable": true,
                                            "wusr": true,
                                            "xgrp": true,
                                            "xoth": true,
                                            "xusr": true
                                        }
                                    },
                                    "md5sum": "be4f85722c889e23c9b30c1f907925b3",
                                    "mode": "0644",
                                    "owner": "zuul",
                                    "size": 49603,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1788235930.8778203-9-148914975128374/source",
                                    "state": "file",
                                    "uid": 1000
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere/molecule/csi/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere/molecule/csi/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere/extensions/molecule/csi/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere/extensions/molecule/csi/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:12:11.672286Z",
                            "start": "2026-09-01T04:12:10.811213Z"
                        },
                        "id": "0242ac17-0010-3afa-40cb-000000000005",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "after": null,
                                            "attributes": null,
                                            "backup": false,
                                            "before": null,
                                            "encoding": "utf-8",
                                            "group": null,
                                            "mode": null,
                                            "owner": null,
                                            "path": "src/github.com/vexxhost/atmosphere/inventory.yaml",
                                            "regexp": "(^\\s*ansible_host:\\s*).*$",
                                            "replace": "\\1\"{{ nodepool.private_ipv4 }}\"",
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "unsafe_writes": false,
                                            "validate": null
                                        }
                                    },
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere",
                                        "stat": {
                                            "atime": 1788235911.3871634,
                                            "attr_flags": "e",
                                            "attributes": [
                                                "extents"
                                            ],
                                            "block_size": 4096,
                                            "blocks": 8,
                                            "charset": "unknown",
                                            "ctime": 1788235910.3868518,
                                            "dev": 64513,
                                            "device_type": 0,
                                            "executable": true,
                                            "exists": true,
                                            "gid": 1000,
                                            "gr_name": "zuul",
                                            "inode": 1048065,
                                            "isblk": false,
                                            "ischr": false,
                                            "isdir": true,
                                            "isfifo": false,
                                            "isgid": false,
                                            "islnk": false,
                                            "isreg": false,
                                            "issock": false,
                                            "isuid": false,
                                            "mimetype": "unknown",
                                            "mode": "0755",
                                            "mtime": 1788235910.3868518,
                                            "nlink": 23,
                                            "path": "src/github.com/vexxhost/atmosphere",
                                            "pw_name": "zuul",
                                            "readable": true,
                                            "rgrp": true,
                                            "roth": true,
                                            "rusr": true,
                                            "size": 4096,
                                            "uid": 1000,
                                            "version": "3723213951",
                                            "wgrp": false,
                                            "woth": false,
                                            "writeable": true,
                                            "wusr": true,
                                            "xgrp": true,
                                            "xoth": true,
                                            "xusr": true
                                        }
                                    },
                                    "msg": "1 replacements made",
                                    "rc": 0
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere/molecule/csi/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere/molecule/csi/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere/extensions/molecule/csi/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere/extensions/molecule/csi/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:12:12.082156Z",
                            "start": "2026-09-01T04:12:11.682495Z"
                        },
                        "id": "0242ac17-0010-3afa-40cb-000000000006",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "csi"
                            ],
                            "delta": "0:03:55.208969",
                            "end": "2026-09-01 04:16:07.658947",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s csi",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/vexxhost/atmosphere",
                                    "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-3afa-40cb-000000000007-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 2,
                            "start": "2026-09-01 04:12:12.449978",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "WARNING  Molecule scenarios should migrate to 'extensions/molecule'\nINFO     [csi > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [csi > prerun] Performing prerun with role_name_check=0...\nINFO     [csi > dependency] Executing\nWARNING  [csi > dependency] Missing roles requirements file: requirements.yml\nWARNING  [csi > dependency] Missing collections requirements file: collections.yml\nWARNING  [csi > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [csi > cleanup] Executing\nWARNING  [csi > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [csi > destroy] Executing\nWARNING  [csi > destroy] Skipping, '--destroy=never' requested.\nINFO     [csi > destroy] Executed: Successful\nINFO     [csi > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/atmosphere/molecule/csi/converge.yml\nINFO     [csi > syntax] Executed: Successful\nINFO     [csi > create] Executing\nWARNING  [csi > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [csi > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 01 September 2026  04:12:26 +0000 (0:00:00.023)       0:00:00.023 *****\n[WARNING]: Platform linux on host instance is using the discovered Python\ninterpreter at /usr/bin/python3.10, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.17/reference_appendices/interpreter_discovery.html for more information.\nok: [instance]\n\nTASK [Configure short hostname] ************************************************\nTuesday 01 September 2026  04:12:27 +0000 (0:00:01.192)       0:00:01.216 *****\nchanged: [instance]\n\nTASK [Ensure hostname inside hosts file] ***************************************\nTuesday 01 September 2026  04:12:28 +0000 (0:00:00.711)       0:00:01.927 *****\n[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created\nwith a mode of 0700, this may cause issues when running as another user. To\navoid this, create the remote_tmp dir with the correct permissions manually\nchanged: [instance]\n\nTASK [Purge \"snapd\" package] ***************************************************\nTuesday 01 September 2026  04:12:28 +0000 (0:00:00.294)       0:00:02.222 *****\nok: [instance]\n\nPLAY [Create devices for Ceph] *************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 01 September 2026  04:12:29 +0000 (0:00:00.789)       0:00:03.011 *****\nok: [instance]\n\nTASK [Install depedencies] *****************************************************\nTuesday 01 September 2026  04:12:30 +0000 (0:00:00.760)       0:00:03.772 *****\nchanged: [instance]\n\nTASK [Start up service] ********************************************************\nTuesday 01 September 2026  04:12:52 +0000 (0:00:22.447)       0:00:26.219 *****\nok: [instance]\n\nTASK [Generate lvm.conf] *******************************************************\nTuesday 01 September 2026  04:12:53 +0000 (0:00:00.532)       0:00:26.752 *****\nok: [instance]\n\nTASK [Write /etc/lvm/lvm.conf] *************************************************\nTuesday 01 September 2026  04:12:53 +0000 (0:00:00.309)       0:00:27.062 *****\nchanged: [instance]\n\nTASK [Get list of all loopback devices] ****************************************\nTuesday 01 September 2026  04:12:54 +0000 (0:00:00.705)       0:00:27.768 *****\nok: [instance]\n\nTASK [Fail if there is any existing loopback devices] **************************\nTuesday 01 September 2026  04:12:54 +0000 (0:00:00.191)       0:00:27.960 *****\nskipping: [instance]\n\nTASK [Create devices for Ceph] *************************************************\nTuesday 01 September 2026  04:12:54 +0000 (0:00:00.023)       0:00:27.983 *****\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Set permissions on loopback devices] *************************************\nTuesday 01 September 2026  04:12:55 +0000 (0:00:00.578)       0:00:28.562 *****\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Start loop devices] ******************************************************\nTuesday 01 September 2026  04:12:55 +0000 (0:00:00.670)       0:00:29.233 *****\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Create a volume group for each loop device] ******************************\nTuesday 01 September 2026  04:12:56 +0000 (0:00:00.714)       0:00:29.947 *****\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Create a logical volume for each loop device] ****************************\nTuesday 01 September 2026  04:13:00 +0000 (0:00:03.414)       0:00:33.362 *****\nchanged: [instance] => (item=ceph-instance-osd0)\nchanged: [instance] => (item=ceph-instance-osd1)\nchanged: [instance] => (item=ceph-instance-osd2)\n\nPLAY RECAP *********************************************************************\ninstance                   : ok=15   changed=9    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0\n\nTuesday 01 September 2026  04:13:01 +0000 (0:00:01.910)       0:00:35.272 *****\n===============================================================================\nInstall depedencies ---------------------------------------------------- 22.45s\nCreate a volume group for each loop device ------------------------------ 3.41s\nCreate a logical volume for each loop device ---------------------------- 1.91s\nGathering Facts --------------------------------------------------------- 1.19s\nPurge \"snapd\" package --------------------------------------------------- 0.79s\nGathering Facts --------------------------------------------------------- 0.76s\nStart loop devices ------------------------------------------------------ 0.71s\nConfigure short hostname ------------------------------------------------ 0.71s\nWrite /etc/lvm/lvm.conf ------------------------------------------------- 0.71s\nSet permissions on loopback devices ------------------------------------- 0.67s\nCreate devices for Ceph ------------------------------------------------- 0.58s\nStart up service -------------------------------------------------------- 0.53s\nGenerate lvm.conf ------------------------------------------------------- 0.31s\nEnsure hostname inside hosts file --------------------------------------- 0.29s\nGet list of all loopback devices ---------------------------------------- 0.19s\nFail if there is any existing loopback devices -------------------------- 0.02s\nINFO     [csi > prepare] Executed: Successful\nINFO     [csi > converge] Executing\n\nPLAY [Debug CSI driver value] **************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 01 September 2026  04:13:03 +0000 (0:00:00.008)       0:00:00.008 *****\n[WARNING]: Platform linux on host instance is using the discovered Python\ninterpreter at /usr/bin/python3.10, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.17/reference_appendices/interpreter_discovery.html for more information.\nok: [instance]\n\nTASK [Display CSI driver value and environment variable] ***********************\nTuesday 01 September 2026  04:13:04 +0000 (0:00:01.002)       0:00:01.010 *****\nok: [instance] => {\n    \"msg\": \"csi_driver=rbd, MOLECULE_CSI_DRIVER=\"\n}\n\nPLAY [all] *********************************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 01 September 2026  04:13:04 +0000 (0:00:00.061)       0:00:01.072 *****\nok: [instance]\n\nTASK [Fail if atmosphere_ceph_enabled is set] **********************************\nTuesday 01 September 2026  04:13:05 +0000 (0:00:00.906)       0:00:01.979 *****\nskipping: [instance]\n\nTASK [Set a fact with the \"atmosphere_images\" for other plays] *****************\nTuesday 01 September 2026  04:13:05 +0000 (0:00:00.052)       0:00:02.031 *****\nok: [instance]\n\nPLAY [Deploy Ceph monitors & managers] *****************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 01 September 2026  04:13:05 +0000 (0:00:00.201)       0:00:02.232 *****\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 01 September 2026  04:13:06 +0000 (0:00:00.968)       0:00:03.201 *****\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 01 September 2026  04:13:07 +0000 (0:00:00.378)       0:00:03.579 *****\nskipping: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nTuesday 01 September 2026  04:13:07 +0000 (0:00:00.033)       0:00:03.613 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 01 September 2026  04:13:07 +0000 (0:00:00.358)       0:00:03.972 *****\nok: [instance] => {\n    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 01 September 2026  04:13:07 +0000 (0:00:00.086)       0:00:04.059 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 01 September 2026  04:13:08 +0000 (0:00:00.744)       0:00:04.803 *****\nskipping: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 01 September 2026  04:13:08 +0000 (0:00:00.061)       0:00:04.864 *****\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 01 September 2026  04:13:08 +0000 (0:00:00.051)       0:00:04.916 *****\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 01 September 2026  04:13:08 +0000 (0:00:00.215)       0:00:05.132 *****\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 01 September 2026  04:13:09 +0000 (0:00:01.348)       0:00:06.480 *****\nok: [instance] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.2/containerd-2.3.2-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 01 September 2026  04:13:10 +0000 (0:00:00.077)       0:00:06.557 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 01 September 2026  04:13:10 +0000 (0:00:00.660)       0:00:07.218 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 01 September 2026  04:13:14 +0000 (0:00:03.907)       0:00:11.125 *****\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 01 September 2026  04:13:14 +0000 (0:00:00.044)       0:00:11.169 *****\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 01 September 2026  04:13:14 +0000 (0:00:00.033)       0:00:11.203 *****\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 01 September 2026  04:13:14 +0000 (0:00:00.024)       0:00:11.227 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 01 September 2026  04:13:20 +0000 (0:00:05.301)       0:00:16.529 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 01 September 2026  04:13:20 +0000 (0:00:00.585)       0:00:17.114 *****\nchanged: [instance] => (item={'path': '/etc/containerd'})\nchanged: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nchanged: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})\nchanged: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nchanged: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nTuesday 01 September 2026  04:13:21 +0000 (0:00:00.882)       0:00:17.997 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 01 September 2026  04:13:22 +0000 (0:00:00.572)       0:00:18.570 *****\n\nRUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************\nTuesday 01 September 2026  04:13:22 +0000 (0:00:00.015)       0:00:18.586 *****\nok: [instance]\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nTuesday 01 September 2026  04:13:23 +0000 (0:00:00.953)       0:00:19.540 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 01 September 2026  04:13:23 +0000 (0:00:00.457)       0:00:19.997 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 01 September 2026  04:13:24 +0000 (0:00:00.535)       0:00:20.533 *****\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 01 September 2026  04:13:24 +0000 (0:00:00.210)       0:00:20.744 *****\nok: [instance] => {\n    \"msg\": \"https://download.docker.com/linux/static/stable/x86_64/docker-24.0.9.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 01 September 2026  04:13:24 +0000 (0:00:00.058)       0:00:20.802 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 01 September 2026  04:13:27 +0000 (0:00:02.809)       0:00:23.612 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Install AppArmor packages] ******************\nTuesday 01 September 2026  04:13:31 +0000 (0:00:04.376)       0:00:27.988 *****\nok: [instance]\n\nTASK [vexxhost.containers.docker : Ensure group \"docker\" exists] ***************\nTuesday 01 September 2026  04:13:32 +0000 (0:00:01.177)       0:00:29.166 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Create systemd service file for docker] *****\nTuesday 01 September 2026  04:13:33 +0000 (0:00:00.403)       0:00:29.569 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Create folders for configuration] ***********\nTuesday 01 September 2026  04:13:33 +0000 (0:00:00.455)       0:00:30.025 *****\nchanged: [instance] => (item={'path': '/etc/docker'})\nchanged: [instance] => (item={'path': '/var/lib/docker', 'mode': '0o710'})\nchanged: [instance] => (item={'path': '/run/docker', 'mode': '0o711'})\n\nTASK [vexxhost.containers.docker : Create systemd socket file for docker] ******\nTuesday 01 September 2026  04:13:34 +0000 (0:00:00.545)       0:00:30.570 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Create docker daemon config file] ***********\nTuesday 01 September 2026  04:13:34 +0000 (0:00:00.453)       0:00:31.023 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Force any restarts if necessary] ************\nTuesday 01 September 2026  04:13:35 +0000 (0:00:00.477)       0:00:31.501 *****\n\nRUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************\nTuesday 01 September 2026  04:13:35 +0000 (0:00:00.020)       0:00:31.521 *****\nok: [instance]\n\nRUNNING HANDLER [vexxhost.containers.docker : Restart docker] ******************\nTuesday 01 September 2026  04:13:35 +0000 (0:00:00.713)       0:00:32.234 *****\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Enable and start service] *******************\nTuesday 01 September 2026  04:13:36 +0000 (0:00:00.822)       0:00:33.056 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Gather variables for each operating system] ******\nTuesday 01 September 2026  04:13:37 +0000 (0:00:00.548)       0:00:33.605 *****\nok: [instance] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/cephadm/vars/ubuntu-22.04.yml)\n\nTASK [vexxhost.ceph.cephadm : Install packages] ********************************\nTuesday 01 September 2026  04:13:37 +0000 (0:00:00.047)       0:00:33.652 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Ensure services are started] *********************\nTuesday 01 September 2026  04:13:42 +0000 (0:00:05.205)       0:00:38.857 *****\nok: [instance] => (item=chronyd)\nok: [instance] => (item=sshd)\n\nTASK [vexxhost.ceph.cephadm : Download \"cephadm\"] ******************************\nTuesday 01 September 2026  04:13:43 +0000 (0:00:00.682)       0:00:39.539 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Remove cephadm from old path] ********************\nTuesday 01 September 2026  04:13:44 +0000 (0:00:01.341)       0:00:40.881 *****\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Ensure \"cephadm\" user is present] ****************\nTuesday 01 September 2026  04:13:44 +0000 (0:00:00.223)       0:00:41.105 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Allow \"cephadm\" user to have passwordless sudo] ***\nTuesday 01 September 2026  04:13:45 +0000 (0:00:00.505)       0:00:41.610 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Set Ceph Monitor IP address] *************************\nTuesday 01 September 2026  04:13:45 +0000 (0:00:00.525)       0:00:42.135 *****\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Check if any node is bootstrapped] *******************\nTuesday 01 September 2026  04:13:45 +0000 (0:00:00.103)       0:00:42.239 *****\nok: [instance] => (item=instance)\n\nTASK [vexxhost.ceph.mon : Select pre-existing bootstrap node if exists] ********\nTuesday 01 September 2026  04:13:46 +0000 (0:00:00.282)       0:00:42.522 *****\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Bootstrap cluster] ***********************************\nTuesday 01 September 2026  04:13:46 +0000 (0:00:00.064)       0:00:42.586 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/mon/tasks/bootstrap-ceph.yml for instance\n\nTASK [vexxhost.ceph.mon : Generate temporary file for \"ceph.conf\"] *************\nTuesday 01 September 2026  04:13:46 +0000 (0:00:00.087)       0:00:42.674 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Include extra configuration values] ******************\nTuesday 01 September 2026  04:13:46 +0000 (0:00:00.345)       0:00:43.020 *****\nchanged: [instance] => (item={'option': 'mon allow pool size one', 'section': 'global', 'value': True})\nchanged: [instance] => (item={'option': 'osd crush chooseleaf type', 'section': 'global', 'value': 0})\nchanged: [instance] => (item={'option': 'auth allow insecure global id reclaim', 'section': 'mon', 'value': False})\n\nTASK [vexxhost.ceph.mon : Run Bootstrap command] *******************************\nTuesday 01 September 2026  04:13:47 +0000 (0:00:00.721)       0:00:43.742 *****\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Remove temporary file for \"ceph.conf\"] ***************\nTuesday 01 September 2026  04:15:09 +0000 (0:01:22.062)       0:02:05.804 *****\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Set bootstrap node] **********************************\nTuesday 01 September 2026  04:15:09 +0000 (0:00:00.241)       0:02:06.045 *****\nok: [instance]\n\nTASK [Install Ceph host] *******************************************************\nTuesday 01 September 2026  04:15:09 +0000 (0:00:00.034)       0:02:06.079 *****\nincluded: vexxhost.ceph.cephadm_host for instance\n\nTASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******\nTuesday 01 September 2026  04:15:09 +0000 (0:00:00.076)       0:02:06.156 *****\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***\nTuesday 01 September 2026  04:15:11 +0000 (0:00:01.630)       0:02:07.786 *****\nok: [instance] => (item=instance)\n\nTASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********\nTuesday 01 September 2026  04:15:11 +0000 (0:00:00.059)       0:02:07.846 *****\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************\nTuesday 01 September 2026  04:15:11 +0000 (0:00:00.357)       0:02:08.204 *****\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Configure \"mon\" label for monitors] ******************\nTuesday 01 September 2026  04:15:14 +0000 (0:00:02.478)       0:02:10.683 *****\nAn exception occurred during task execution. To see the full traceback, use -vvv. The error was: [errno 5] RADOS I/O error (error connecting to the cluster)\nfatal: [instance]: FAILED! => {\"changed\": false, \"module_stderr\": \"Traceback (most recent call last):\\n  File \\\"<stdin>\\\", line 107, in <module>\\n  File \\\"<stdin>\\\", line 99, in _ansiballz_main\\n  File \\\"<stdin>\\\", line 47, in invoke_module\\n  File \\\"/usr/lib/python3.10/runpy.py\\\", line 224, in run_module\\n    return _run_module_code(code, init_globals, run_name, mod_spec)\\n  File \\\"/usr/lib/python3.10/runpy.py\\\", line 96, in _run_module_code\\n    _run_code(code, mod_globals, init_globals,\\n  File \\\"/usr/lib/python3.10/runpy.py\\\", line 86, in _run_code\\n    exec(code, run_globals)\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 202, in <module>\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 198, in main\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 177, in run_module\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 120, in apply_spec\\nRuntimeError: Inferring config /var/lib/ceph/4837cbf8-4f90-4300-b3f6-726c9b9f89b4/mon.instance/config\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: error parsing file /etc/ceph/ceph.keyring: error setting modifier for [client.admin] type=key val=AgAhUZZqp3jlFCAAAuCh0rRK3lKSffOvw3naL1qv0vcW54UzVUXvok4GVeY=: Malformed input [buffer:3]\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: failed to load /etc/ceph/ceph.keyring: (5) Input/output error\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: error parsing file /etc/ceph/ceph.keyring: error setting modifier for [client.admin] type=key val=AgAhUZZqp3jlFCAAAuCh0rRK3lKSffOvw3naL1qv0vcW54UzVUXvok4GVeY=: Malformed input [buffer:3]\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: failed to load /etc/ceph/ceph.keyring: (5) Input/output error\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: error parsing file /etc/ceph/ceph.keyring: error setting modifier for [client.admin] type=key val=AgAhUZZqp3jlFCAAAuCh0rRK3lKSffOvw3naL1qv0vcW54UzVUXvok4GVeY=: Malformed input [buffer:3]\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: failed to load /etc/ceph/ceph.keyring: (5) Input/output error\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 monclient: keyring not found\\n[errno 5] RADOS I/O error (error connecting to the cluster)\\n\\n\", \"module_stdout\": \"\", \"msg\": \"MODULE FAILURE\\nSee stdout/stderr for the exact error\", \"rc\": 1}\n\nPLAY RECAP *********************************************************************\ninstance                   : ok=55   changed=26   unreachable=0    failed=1    skipped=7    rescued=0    ignored=0\n\nTuesday 01 September 2026  04:16:07 +0000 (0:00:53.279)       0:03:03.962 *****\n===============================================================================\nvexxhost.ceph.mon : Run Bootstrap command ------------------------------ 82.06s\nvexxhost.ceph.mon : Configure \"mon\" label for monitors ----------------- 53.28s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 5.30s\nvexxhost.ceph.cephadm : Install packages -------------------------------- 5.21s\nvexxhost.containers.download_artifact : Extract archive ----------------- 4.38s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.91s\nvexxhost.containers.download_artifact : Download item ------------------- 2.81s\nvexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 2.48s\nvexxhost.containers.containerd : Reload systemd ------------------------- 1.67s\nvexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user ------ 1.63s\nvexxhost.containers.package : Update state for tar ---------------------- 1.35s\nvexxhost.ceph.cephadm : Download \"cephadm\" ------------------------------ 1.34s\nvexxhost.containers.docker : Install AppArmor packages ------------------ 1.18s\nGathering Facts --------------------------------------------------------- 1.00s\nGathering Facts --------------------------------------------------------- 0.97s\nGathering Facts --------------------------------------------------------- 0.91s\nvexxhost.containers.containerd : Create folders for configuration ------- 0.88s\nvexxhost.containers.docker : Restart docker ----------------------------- 0.82s\nvexxhost.containers.download_artifact : Download item ------------------- 0.74s\nvexxhost.ceph.mon : Include extra configuration values ------------------ 0.72s\nCRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.csi/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/csi/converge.yml\nERROR    [csi > converge] \u001b[31mExecuted: Failed\u001b[0m\nERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.csi/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/csi/converge.yml",
                            "stdout_lines": [
                                "WARNING  Molecule scenarios should migrate to 'extensions/molecule'",
                                "INFO     [csi > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [csi > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [csi > dependency] Executing",
                                "WARNING  [csi > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [csi > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [csi > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [csi > cleanup] Executing",
                                "WARNING  [csi > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [csi > destroy] Executing",
                                "WARNING  [csi > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [csi > destroy] Executed: Successful",
                                "INFO     [csi > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/atmosphere/molecule/csi/converge.yml",
                                "INFO     [csi > syntax] Executed: Successful",
                                "INFO     [csi > create] Executing",
                                "WARNING  [csi > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [csi > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 01 September 2026  04:12:26 +0000 (0:00:00.023)       0:00:00.023 *****",
                                "[WARNING]: Platform linux on host instance is using the discovered Python",
                                "interpreter at /usr/bin/python3.10, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.17/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [instance]",
                                "",
                                "TASK [Configure short hostname] ************************************************",
                                "Tuesday 01 September 2026  04:12:27 +0000 (0:00:01.192)       0:00:01.216 *****",
                                "changed: [instance]",
                                "",
                                "TASK [Ensure hostname inside hosts file] ***************************************",
                                "Tuesday 01 September 2026  04:12:28 +0000 (0:00:00.711)       0:00:01.927 *****",
                                "[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: [instance]",
                                "",
                                "TASK [Purge \"snapd\" package] ***************************************************",
                                "Tuesday 01 September 2026  04:12:28 +0000 (0:00:00.294)       0:00:02.222 *****",
                                "ok: [instance]",
                                "",
                                "PLAY [Create devices for Ceph] *************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 01 September 2026  04:12:29 +0000 (0:00:00.789)       0:00:03.011 *****",
                                "ok: [instance]",
                                "",
                                "TASK [Install depedencies] *****************************************************",
                                "Tuesday 01 September 2026  04:12:30 +0000 (0:00:00.760)       0:00:03.772 *****",
                                "changed: [instance]",
                                "",
                                "TASK [Start up service] ********************************************************",
                                "Tuesday 01 September 2026  04:12:52 +0000 (0:00:22.447)       0:00:26.219 *****",
                                "ok: [instance]",
                                "",
                                "TASK [Generate lvm.conf] *******************************************************",
                                "Tuesday 01 September 2026  04:12:53 +0000 (0:00:00.532)       0:00:26.752 *****",
                                "ok: [instance]",
                                "",
                                "TASK [Write /etc/lvm/lvm.conf] *************************************************",
                                "Tuesday 01 September 2026  04:12:53 +0000 (0:00:00.309)       0:00:27.062 *****",
                                "changed: [instance]",
                                "",
                                "TASK [Get list of all loopback devices] ****************************************",
                                "Tuesday 01 September 2026  04:12:54 +0000 (0:00:00.705)       0:00:27.768 *****",
                                "ok: [instance]",
                                "",
                                "TASK [Fail if there is any existing loopback devices] **************************",
                                "Tuesday 01 September 2026  04:12:54 +0000 (0:00:00.191)       0:00:27.960 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [Create devices for Ceph] *************************************************",
                                "Tuesday 01 September 2026  04:12:54 +0000 (0:00:00.023)       0:00:27.983 *****",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Set permissions on loopback devices] *************************************",
                                "Tuesday 01 September 2026  04:12:55 +0000 (0:00:00.578)       0:00:28.562 *****",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Start loop devices] ******************************************************",
                                "Tuesday 01 September 2026  04:12:55 +0000 (0:00:00.670)       0:00:29.233 *****",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Create a volume group for each loop device] ******************************",
                                "Tuesday 01 September 2026  04:12:56 +0000 (0:00:00.714)       0:00:29.947 *****",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Create a logical volume for each loop device] ****************************",
                                "Tuesday 01 September 2026  04:13:00 +0000 (0:00:03.414)       0:00:33.362 *****",
                                "changed: [instance] => (item=ceph-instance-osd0)",
                                "changed: [instance] => (item=ceph-instance-osd1)",
                                "changed: [instance] => (item=ceph-instance-osd2)",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "instance                   : ok=15   changed=9    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0",
                                "",
                                "Tuesday 01 September 2026  04:13:01 +0000 (0:00:01.910)       0:00:35.272 *****",
                                "===============================================================================",
                                "Install depedencies ---------------------------------------------------- 22.45s",
                                "Create a volume group for each loop device ------------------------------ 3.41s",
                                "Create a logical volume for each loop device ---------------------------- 1.91s",
                                "Gathering Facts --------------------------------------------------------- 1.19s",
                                "Purge \"snapd\" package --------------------------------------------------- 0.79s",
                                "Gathering Facts --------------------------------------------------------- 0.76s",
                                "Start loop devices ------------------------------------------------------ 0.71s",
                                "Configure short hostname ------------------------------------------------ 0.71s",
                                "Write /etc/lvm/lvm.conf ------------------------------------------------- 0.71s",
                                "Set permissions on loopback devices ------------------------------------- 0.67s",
                                "Create devices for Ceph ------------------------------------------------- 0.58s",
                                "Start up service -------------------------------------------------------- 0.53s",
                                "Generate lvm.conf ------------------------------------------------------- 0.31s",
                                "Ensure hostname inside hosts file --------------------------------------- 0.29s",
                                "Get list of all loopback devices ---------------------------------------- 0.19s",
                                "Fail if there is any existing loopback devices -------------------------- 0.02s",
                                "INFO     [csi > prepare] Executed: Successful",
                                "INFO     [csi > converge] Executing",
                                "",
                                "PLAY [Debug CSI driver value] **************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 01 September 2026  04:13:03 +0000 (0:00:00.008)       0:00:00.008 *****",
                                "[WARNING]: Platform linux on host instance is using the discovered Python",
                                "interpreter at /usr/bin/python3.10, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.17/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [instance]",
                                "",
                                "TASK [Display CSI driver value and environment variable] ***********************",
                                "Tuesday 01 September 2026  04:13:04 +0000 (0:00:01.002)       0:00:01.010 *****",
                                "ok: [instance] => {",
                                "    \"msg\": \"csi_driver=rbd, MOLECULE_CSI_DRIVER=\"",
                                "}",
                                "",
                                "PLAY [all] *********************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 01 September 2026  04:13:04 +0000 (0:00:00.061)       0:00:01.072 *****",
                                "ok: [instance]",
                                "",
                                "TASK [Fail if atmosphere_ceph_enabled is set] **********************************",
                                "Tuesday 01 September 2026  04:13:05 +0000 (0:00:00.906)       0:00:01.979 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [Set a fact with the \"atmosphere_images\" for other plays] *****************",
                                "Tuesday 01 September 2026  04:13:05 +0000 (0:00:00.052)       0:00:02.031 *****",
                                "ok: [instance]",
                                "",
                                "PLAY [Deploy Ceph monitors & managers] *****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 01 September 2026  04:13:05 +0000 (0:00:00.201)       0:00:02.232 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 01 September 2026  04:13:06 +0000 (0:00:00.968)       0:00:03.201 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 01 September 2026  04:13:07 +0000 (0:00:00.378)       0:00:03.579 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Tuesday 01 September 2026  04:13:07 +0000 (0:00:00.033)       0:00:03.613 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 01 September 2026  04:13:07 +0000 (0:00:00.358)       0:00:03.972 *****",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 01 September 2026  04:13:07 +0000 (0:00:00.086)       0:00:04.059 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 01 September 2026  04:13:08 +0000 (0:00:00.744)       0:00:04.803 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 01 September 2026  04:13:08 +0000 (0:00:00.061)       0:00:04.864 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 01 September 2026  04:13:08 +0000 (0:00:00.051)       0:00:04.916 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 01 September 2026  04:13:08 +0000 (0:00:00.215)       0:00:05.132 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 01 September 2026  04:13:09 +0000 (0:00:01.348)       0:00:06.480 *****",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.2/containerd-2.3.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 01 September 2026  04:13:10 +0000 (0:00:00.077)       0:00:06.557 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 01 September 2026  04:13:10 +0000 (0:00:00.660)       0:00:07.218 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 01 September 2026  04:13:14 +0000 (0:00:03.907)       0:00:11.125 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 01 September 2026  04:13:14 +0000 (0:00:00.044)       0:00:11.169 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 01 September 2026  04:13:14 +0000 (0:00:00.033)       0:00:11.203 *****",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 01 September 2026  04:13:14 +0000 (0:00:00.024)       0:00:11.227 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 01 September 2026  04:13:20 +0000 (0:00:05.301)       0:00:16.529 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 01 September 2026  04:13:20 +0000 (0:00:00.585)       0:00:17.114 *****",
                                "changed: [instance] => (item={'path': '/etc/containerd'})",
                                "changed: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "changed: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "changed: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "changed: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Tuesday 01 September 2026  04:13:21 +0000 (0:00:00.882)       0:00:17.997 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 01 September 2026  04:13:22 +0000 (0:00:00.572)       0:00:18.570 *****",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************",
                                "Tuesday 01 September 2026  04:13:22 +0000 (0:00:00.015)       0:00:18.586 *****",
                                "ok: [instance]",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Tuesday 01 September 2026  04:13:23 +0000 (0:00:00.953)       0:00:19.540 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 01 September 2026  04:13:23 +0000 (0:00:00.457)       0:00:19.997 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 01 September 2026  04:13:24 +0000 (0:00:00.535)       0:00:20.533 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 01 September 2026  04:13:24 +0000 (0:00:00.210)       0:00:20.744 *****",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://download.docker.com/linux/static/stable/x86_64/docker-24.0.9.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 01 September 2026  04:13:24 +0000 (0:00:00.058)       0:00:20.802 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 01 September 2026  04:13:27 +0000 (0:00:02.809)       0:00:23.612 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Install AppArmor packages] ******************",
                                "Tuesday 01 September 2026  04:13:31 +0000 (0:00:04.376)       0:00:27.988 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Ensure group \"docker\" exists] ***************",
                                "Tuesday 01 September 2026  04:13:32 +0000 (0:00:01.177)       0:00:29.166 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create systemd service file for docker] *****",
                                "Tuesday 01 September 2026  04:13:33 +0000 (0:00:00.403)       0:00:29.569 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create folders for configuration] ***********",
                                "Tuesday 01 September 2026  04:13:33 +0000 (0:00:00.455)       0:00:30.025 *****",
                                "changed: [instance] => (item={'path': '/etc/docker'})",
                                "changed: [instance] => (item={'path': '/var/lib/docker', 'mode': '0o710'})",
                                "changed: [instance] => (item={'path': '/run/docker', 'mode': '0o711'})",
                                "",
                                "TASK [vexxhost.containers.docker : Create systemd socket file for docker] ******",
                                "Tuesday 01 September 2026  04:13:34 +0000 (0:00:00.545)       0:00:30.570 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create docker daemon config file] ***********",
                                "Tuesday 01 September 2026  04:13:34 +0000 (0:00:00.453)       0:00:31.023 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Force any restarts if necessary] ************",
                                "Tuesday 01 September 2026  04:13:35 +0000 (0:00:00.477)       0:00:31.501 *****",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************",
                                "Tuesday 01 September 2026  04:13:35 +0000 (0:00:00.020)       0:00:31.521 *****",
                                "ok: [instance]",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.docker : Restart docker] ******************",
                                "Tuesday 01 September 2026  04:13:35 +0000 (0:00:00.713)       0:00:32.234 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Enable and start service] *******************",
                                "Tuesday 01 September 2026  04:13:36 +0000 (0:00:00.822)       0:00:33.056 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Gather variables for each operating system] ******",
                                "Tuesday 01 September 2026  04:13:37 +0000 (0:00:00.548)       0:00:33.605 *****",
                                "ok: [instance] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/cephadm/vars/ubuntu-22.04.yml)",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Install packages] ********************************",
                                "Tuesday 01 September 2026  04:13:37 +0000 (0:00:00.047)       0:00:33.652 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Ensure services are started] *********************",
                                "Tuesday 01 September 2026  04:13:42 +0000 (0:00:05.205)       0:00:38.857 *****",
                                "ok: [instance] => (item=chronyd)",
                                "ok: [instance] => (item=sshd)",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Download \"cephadm\"] ******************************",
                                "Tuesday 01 September 2026  04:13:43 +0000 (0:00:00.682)       0:00:39.539 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Remove cephadm from old path] ********************",
                                "Tuesday 01 September 2026  04:13:44 +0000 (0:00:01.341)       0:00:40.881 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Ensure \"cephadm\" user is present] ****************",
                                "Tuesday 01 September 2026  04:13:44 +0000 (0:00:00.223)       0:00:41.105 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Allow \"cephadm\" user to have passwordless sudo] ***",
                                "Tuesday 01 September 2026  04:13:45 +0000 (0:00:00.505)       0:00:41.610 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Set Ceph Monitor IP address] *************************",
                                "Tuesday 01 September 2026  04:13:45 +0000 (0:00:00.525)       0:00:42.135 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Check if any node is bootstrapped] *******************",
                                "Tuesday 01 September 2026  04:13:45 +0000 (0:00:00.103)       0:00:42.239 *****",
                                "ok: [instance] => (item=instance)",
                                "",
                                "TASK [vexxhost.ceph.mon : Select pre-existing bootstrap node if exists] ********",
                                "Tuesday 01 September 2026  04:13:46 +0000 (0:00:00.282)       0:00:42.522 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Bootstrap cluster] ***********************************",
                                "Tuesday 01 September 2026  04:13:46 +0000 (0:00:00.064)       0:00:42.586 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/mon/tasks/bootstrap-ceph.yml for instance",
                                "",
                                "TASK [vexxhost.ceph.mon : Generate temporary file for \"ceph.conf\"] *************",
                                "Tuesday 01 September 2026  04:13:46 +0000 (0:00:00.087)       0:00:42.674 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Include extra configuration values] ******************",
                                "Tuesday 01 September 2026  04:13:46 +0000 (0:00:00.345)       0:00:43.020 *****",
                                "changed: [instance] => (item={'option': 'mon allow pool size one', 'section': 'global', 'value': True})",
                                "changed: [instance] => (item={'option': 'osd crush chooseleaf type', 'section': 'global', 'value': 0})",
                                "changed: [instance] => (item={'option': 'auth allow insecure global id reclaim', 'section': 'mon', 'value': False})",
                                "",
                                "TASK [vexxhost.ceph.mon : Run Bootstrap command] *******************************",
                                "Tuesday 01 September 2026  04:13:47 +0000 (0:00:00.721)       0:00:43.742 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Remove temporary file for \"ceph.conf\"] ***************",
                                "Tuesday 01 September 2026  04:15:09 +0000 (0:01:22.062)       0:02:05.804 *****",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Set bootstrap node] **********************************",
                                "Tuesday 01 September 2026  04:15:09 +0000 (0:00:00.241)       0:02:06.045 *****",
                                "ok: [instance]",
                                "",
                                "TASK [Install Ceph host] *******************************************************",
                                "Tuesday 01 September 2026  04:15:09 +0000 (0:00:00.034)       0:02:06.079 *****",
                                "included: vexxhost.ceph.cephadm_host for instance",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******",
                                "Tuesday 01 September 2026  04:15:09 +0000 (0:00:00.076)       0:02:06.156 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***",
                                "Tuesday 01 September 2026  04:15:11 +0000 (0:00:01.630)       0:02:07.786 *****",
                                "ok: [instance] => (item=instance)",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********",
                                "Tuesday 01 September 2026  04:15:11 +0000 (0:00:00.059)       0:02:07.846 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************",
                                "Tuesday 01 September 2026  04:15:11 +0000 (0:00:00.357)       0:02:08.204 *****",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Configure \"mon\" label for monitors] ******************",
                                "Tuesday 01 September 2026  04:15:14 +0000 (0:00:02.478)       0:02:10.683 *****",
                                "An exception occurred during task execution. To see the full traceback, use -vvv. The error was: [errno 5] RADOS I/O error (error connecting to the cluster)",
                                "fatal: [instance]: FAILED! => {\"changed\": false, \"module_stderr\": \"Traceback (most recent call last):\\n  File \\\"<stdin>\\\", line 107, in <module>\\n  File \\\"<stdin>\\\", line 99, in _ansiballz_main\\n  File \\\"<stdin>\\\", line 47, in invoke_module\\n  File \\\"/usr/lib/python3.10/runpy.py\\\", line 224, in run_module\\n    return _run_module_code(code, init_globals, run_name, mod_spec)\\n  File \\\"/usr/lib/python3.10/runpy.py\\\", line 96, in _run_module_code\\n    _run_code(code, mod_globals, init_globals,\\n  File \\\"/usr/lib/python3.10/runpy.py\\\", line 86, in _run_code\\n    exec(code, run_globals)\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 202, in <module>\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 198, in main\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 177, in run_module\\n  File \\\"/tmp/ansible_vexxhost.ceph.orch_apply_payload_iioa9fde/ansible_vexxhost.ceph.orch_apply_payload.zip/ansible_collections/vexxhost/ceph/plugins/modules/orch_apply.py\\\", line 120, in apply_spec\\nRuntimeError: Inferring config /var/lib/ceph/4837cbf8-4f90-4300-b3f6-726c9b9f89b4/mon.instance/config\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: error parsing file /etc/ceph/ceph.keyring: error setting modifier for [client.admin] type=key val=AgAhUZZqp3jlFCAAAuCh0rRK3lKSffOvw3naL1qv0vcW54UzVUXvok4GVeY=: Malformed input [buffer:3]\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: failed to load /etc/ceph/ceph.keyring: (5) Input/output error\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: error parsing file /etc/ceph/ceph.keyring: error setting modifier for [client.admin] type=key val=AgAhUZZqp3jlFCAAAuCh0rRK3lKSffOvw3naL1qv0vcW54UzVUXvok4GVeY=: Malformed input [buffer:3]\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: failed to load /etc/ceph/ceph.keyring: (5) Input/output error\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: error parsing file /etc/ceph/ceph.keyring: error setting modifier for [client.admin] type=key val=AgAhUZZqp3jlFCAAAuCh0rRK3lKSffOvw3naL1qv0vcW54UzVUXvok4GVeY=: Malformed input [buffer:3]\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 auth: failed to load /etc/ceph/ceph.keyring: (5) Input/output error\\n2026-09-01T04:16:06.684+0000 7fe07ad46640 -1 monclient: keyring not found\\n[errno 5] RADOS I/O error (error connecting to the cluster)\\n\\n\", \"module_stdout\": \"\", \"msg\": \"MODULE FAILURE\\nSee stdout/stderr for the exact error\", \"rc\": 1}",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "instance                   : ok=55   changed=26   unreachable=0    failed=1    skipped=7    rescued=0    ignored=0",
                                "",
                                "Tuesday 01 September 2026  04:16:07 +0000 (0:00:53.279)       0:03:03.962 *****",
                                "===============================================================================",
                                "vexxhost.ceph.mon : Run Bootstrap command ------------------------------ 82.06s",
                                "vexxhost.ceph.mon : Configure \"mon\" label for monitors ----------------- 53.28s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 5.30s",
                                "vexxhost.ceph.cephadm : Install packages -------------------------------- 5.21s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 4.38s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.91s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 2.81s",
                                "vexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 2.48s",
                                "vexxhost.containers.containerd : Reload systemd ------------------------- 1.67s",
                                "vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user ------ 1.63s",
                                "vexxhost.containers.package : Update state for tar ---------------------- 1.35s",
                                "vexxhost.ceph.cephadm : Download \"cephadm\" ------------------------------ 1.34s",
                                "vexxhost.containers.docker : Install AppArmor packages ------------------ 1.18s",
                                "Gathering Facts --------------------------------------------------------- 1.00s",
                                "Gathering Facts --------------------------------------------------------- 0.97s",
                                "Gathering Facts --------------------------------------------------------- 0.91s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 0.88s",
                                "vexxhost.containers.docker : Restart docker ----------------------------- 0.82s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 0.74s",
                                "vexxhost.ceph.mon : Include extra configuration values ------------------ 0.72s",
                                "CRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.csi/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/csi/converge.yml",
                                "ERROR    [csi > converge] \u001b[31mExecuted: Failed\u001b[0m",
                                "ERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.csi/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/csi/converge.yml"
                            ],
                            "zuul_log_id": "0242ac17-0010-3afa-40cb-000000000007-1-instance"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:07.933286Z",
                            "start": "2026-09-01T04:12:12.108518Z"
                        },
                        "id": "0242ac17-0010-3afa-40cb-000000000007",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 2,
            "failures": 1,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/atmosphere-zuul-jobs/playbooks/molecule/post.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-09-01T04:16:19.072460Z",
                    "start": "2026-09-01T04:16:08.753650Z"
                },
                "id": "0242ac17-0010-581d-c886-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/system",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/system",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/system",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/system",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:09.136021Z",
                            "start": "2026-09-01T04:16:08.767726Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000000c",
                        "name": "creating directory for system status"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -x\nsystemd-cgls --full --all --no-pager > /tmp/logs/system/systemd-cgls.txt\nip addr > /tmp/logs/system/ip-addr.txt\nip route > /tmp/logs/system/ip-route.txt\nlsblk > /tmp/logs/system/lsblk.txt\nmount > /tmp/logs/system/mount.txt\ndocker images > /tmp/logs/system/docker-images.txt\nbrctl show > /tmp/logs/system/brctl-show.txt\nps aux --sort=-%mem > /tmp/logs/system/ps.txt\ndpkg -l > /tmp/logs/system/packages.txt\nCONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))\nif [ ! -z \"$CONTAINERS\" ]; then\n  mkdir -p \"/tmp/logs/system/containers\"\n  for CONTAINER in ${CONTAINERS}; do\n    docker logs \"${CONTAINER}\" > \"/tmp/logs/system/containers/${CONTAINER}.txt\"\n  done\nfi",
                            "delta": "0:00:00.115397",
                            "end": "2026-09-01 04:16:09.615737",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -x\nsystemd-cgls --full --all --no-pager > /tmp/logs/system/systemd-cgls.txt\nip addr > /tmp/logs/system/ip-addr.txt\nip route > /tmp/logs/system/ip-route.txt\nlsblk > /tmp/logs/system/lsblk.txt\nmount > /tmp/logs/system/mount.txt\ndocker images > /tmp/logs/system/docker-images.txt\nbrctl show > /tmp/logs/system/brctl-show.txt\nps aux --sort=-%mem > /tmp/logs/system/ps.txt\ndpkg -l > /tmp/logs/system/packages.txt\nCONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))\nif [ ! -z \"$CONTAINERS\" ]; then\n  mkdir -p \"/tmp/logs/system/containers\"\n  for CONTAINER in ${CONTAINERS}; do\n    docker logs \"${CONTAINER}\" > \"/tmp/logs/system/containers/${CONTAINER}.txt\"\n  done\nfi",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-00000000000d-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:09.500340",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "+ systemd-cgls --full --all --no-pager\n+ ip addr\n+ ip route\n+ lsblk\n+ mount\n+ docker images\n+ brctl show\n/bin/bash: line 8: brctl: command not found\n+ ps aux --sort=-%mem\n+ dpkg -l\n+ CONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))\n++ docker ps -a --format '{{ .Names }}' --filter label=zuul\n+ '[' '!' -z '' ']'",
                            "stdout_lines": [
                                "+ systemd-cgls --full --all --no-pager",
                                "+ ip addr",
                                "+ ip route",
                                "+ lsblk",
                                "+ mount",
                                "+ docker images",
                                "+ brctl show",
                                "/bin/bash: line 8: brctl: command not found",
                                "+ ps aux --sort=-%mem",
                                "+ dpkg -l",
                                "+ CONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))",
                                "++ docker ps -a --format '{{ .Names }}' --filter label=zuul",
                                "+ '[' '!' -z '' ']'"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-00000000000d-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:09.681224Z",
                            "start": "2026-09-01T04:16:09.160140Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000000d",
                        "name": "Get logs for each host"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/tmp/logs/system /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@162.253.55.71:/tmp/logs/system",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "created directory /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance\ncd+++++++++ system/\n>f+++++++++ system/brctl-show.txt\n>f+++++++++ system/docker-images.txt\n>f+++++++++ system/ip-addr.txt\n>f+++++++++ system/ip-route.txt\n>f+++++++++ system/lsblk.txt\n>f+++++++++ system/mount.txt\n>f+++++++++ system/packages.txt\n>f+++++++++ system/ps.txt\n>f+++++++++ system/systemd-cgls.txt\n",
                            "rc": 0,
                            "stdout_lines": [
                                "created directory /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                "cd+++++++++ system/",
                                ">f+++++++++ system/brctl-show.txt",
                                ">f+++++++++ system/docker-images.txt",
                                ">f+++++++++ system/ip-addr.txt",
                                ">f+++++++++ system/ip-route.txt",
                                ">f+++++++++ system/lsblk.txt",
                                ">f+++++++++ system/mount.txt",
                                ">f+++++++++ system/packages.txt",
                                ">f+++++++++ system/ps.txt",
                                ">f+++++++++ system/systemd-cgls.txt"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:10.342042Z",
                            "start": "2026-09-01T04:16:09.688551Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000000e",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "directory",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/tmp/logs/helm/values",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/tmp/logs/helm/values",
                                            "state": "absent"
                                        }
                                    },
                                    "directory": "values",
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/tmp/logs/helm/values",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/tmp/logs/helm/values",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0
                                },
                                {
                                    "ansible_loop_var": "directory",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/tmp/logs/helm/releases",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/tmp/logs/helm/releases",
                                            "state": "absent"
                                        }
                                    },
                                    "directory": "releases",
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/tmp/logs/helm/releases",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/tmp/logs/helm/releases",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:10.779255Z",
                            "start": "2026-09-01T04:16:10.353271Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000012",
                        "name": "creating directory for helm release status"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\n\nfor namespace in $(kubectl get namespaces --no-headers --output custom-columns=\":metadata.name\"); do\n      # get all Helm releases including pending and failed releases\n      for release in $(helm list --all --short --namespace $namespace); do\n              # Make respective directories only when a Helm release actually exists in the namespace\n              # to prevent uploading a bunch of empty directories for namespaces without a Helm release.\n              mkdir -p /tmp/logs/helm/releases/$namespace\n              mkdir -p /tmp/logs/helm/values/$namespace\n\n              helm status $release --namespace $namespace >> /tmp/logs/helm/releases/$namespace/$release.txt\n              helm get values $release --namespace $namespace --all >> /tmp/logs/helm/values/$namespace/$release.yaml\n      done\ndone",
                            "delta": "0:00:00.005130",
                            "end": "2026-09-01 04:16:11.004933",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\n\nfor namespace in $(kubectl get namespaces --no-headers --output custom-columns=\":metadata.name\"); do\n      # get all Helm releases including pending and failed releases\n      for release in $(helm list --all --short --namespace $namespace); do\n              # Make respective directories only when a Helm release actually exists in the namespace\n              # to prevent uploading a bunch of empty directories for namespaces without a Helm release.\n              mkdir -p /tmp/logs/helm/releases/$namespace\n              mkdir -p /tmp/logs/helm/values/$namespace\n\n              helm status $release --namespace $namespace >> /tmp/logs/helm/releases/$namespace/$release.txt\n              helm get values $release --namespace $namespace --all >> /tmp/logs/helm/values/$namespace/$release.yaml\n      done\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-000000000014-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:10.999803",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/bin/bash: line 3: kubectl: command not found",
                            "stdout_lines": [
                                "/bin/bash: line 3: kubectl: command not found"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-000000000014-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:11.328125Z",
                            "start": "2026-09-01T04:16:10.806978Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000014",
                        "name": "Gather get release status for helm charts"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/tmp/logs/helm /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@162.253.55.71:/tmp/logs/helm",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ helm/\ncd+++++++++ helm/releases/\ncd+++++++++ helm/values/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ helm/",
                                "cd+++++++++ helm/releases/",
                                "cd+++++++++ helm/values/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:11.847491Z",
                            "start": "2026-09-01T04:16:11.333057Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000015",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/objects/cluster",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/objects/cluster",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/objects/cluster",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/objects/cluster",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:12.082588Z",
                            "start": "2026-09-01T04:16:11.856394Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000019",
                        "name": "creating directory for cluster scoped objects"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nexport OBJECT_TYPE=node,clusterrole,clusterrolebinding,storageclass,namespace\nexport PARALLELISM_FACTOR=2\n\nfunction list_objects () {\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"$@\"' _ {}\n}\nexport -f list_objects\n\nfunction name_objects () {\n  export OBJECT=$1\n  kubectl get ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${OBJECT} ${1#*/}\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export OBJECT=${input[0]}\n  export NAME=${input[1]#*/}\n  echo \"${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/cluster/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nlist_objects |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                            "delta": "0:00:00.023882",
                            "end": "2026-09-01 04:16:12.383235",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nexport OBJECT_TYPE=node,clusterrole,clusterrolebinding,storageclass,namespace\nexport PARALLELISM_FACTOR=2\n\nfunction list_objects () {\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"$@\"' _ {}\n}\nexport -f list_objects\n\nfunction name_objects () {\n  export OBJECT=$1\n  kubectl get ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${OBJECT} ${1#*/}\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export OBJECT=${input[0]}\n  export NAME=${input[1]#*/}\n  echo \"${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/cluster/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nlist_objects |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-00000000001a-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:12.359353",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nenvironment: line 1: kubectl: command not found\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvironment: line 1: kubectl: command not found\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvironment: line 1: kubectl: command not found\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvironment: line 1: kubectl: command not found\nenvironment: line 1: kubectl: command not found\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "environment: line 1: kubectl: command not found",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "environment: line 1: kubectl: command not found",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "environment: line 1: kubectl: command not found",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "environment: line 1: kubectl: command not found",
                                "environment: line 1: kubectl: command not found",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-00000000001a-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:12.631184Z",
                            "start": "2026-09-01T04:16:12.110515Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000001a",
                        "name": "Gathering descriptions for cluster scoped objects"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/objects/namespaced",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/objects/namespaced",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/objects/namespaced",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/objects/namespaced",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:12.863839Z",
                            "start": "2026-09-01T04:16:12.637802Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000001b",
                        "name": "creating directory for namespace scoped objects"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nexport OBJECT_TYPE=configmaps,cronjobs,daemonsets,deployment,endpoints,ingresses,jobs,networkpolicies,pods,podsecuritypolicies,persistentvolumeclaims,rolebindings,roles,secrets,serviceaccounts,services,statefulsets\nexport PARALLELISM_FACTOR=2\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\n\nfunction list_namespaced_objects () {\n  export NAMESPACE=$1\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} $@\"' _ {}\n}\nexport -f list_namespaced_objects\n\nfunction name_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  kubectl get -n ${NAMESPACE} ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} ${OBJECT} $@\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  export NAME=${input[2]#*/}\n  echo \"${NAMESPACE}/${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/namespaced/${NAMESPACE}/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get -n ${NAMESPACE} ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe -n ${NAMESPACE} ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nget_namespaces |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'list_namespaced_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                            "delta": "0:00:00.009942",
                            "end": "2026-09-01 04:16:13.102809",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nexport OBJECT_TYPE=configmaps,cronjobs,daemonsets,deployment,endpoints,ingresses,jobs,networkpolicies,pods,podsecuritypolicies,persistentvolumeclaims,rolebindings,roles,secrets,serviceaccounts,services,statefulsets\nexport PARALLELISM_FACTOR=2\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\n\nfunction list_namespaced_objects () {\n  export NAMESPACE=$1\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} $@\"' _ {}\n}\nexport -f list_namespaced_objects\n\nfunction name_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  kubectl get -n ${NAMESPACE} ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} ${OBJECT} $@\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  export NAME=${input[2]#*/}\n  echo \"${NAMESPACE}/${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/namespaced/${NAMESPACE}/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get -n ${NAMESPACE} ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe -n ${NAMESPACE} ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nget_namespaces |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'list_namespaced_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-00000000001c-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:13.092867",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "environment: line 5: kubectl: command not found\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                            "stdout_lines": [
                                "environment: line 5: kubectl: command not found",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-00000000001c-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:13.408920Z",
                            "start": "2026-09-01T04:16:12.888278Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000001c",
                        "name": "Gathering descriptions for namespace scoped objects"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/tmp/logs/objects /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@162.253.55.71:/tmp/logs/objects",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ objects/\ncd+++++++++ objects/cluster/\ncd+++++++++ objects/namespaced/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ objects/",
                                "cd+++++++++ objects/cluster/",
                                "cd+++++++++ objects/namespaced/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:13.917592Z",
                            "start": "2026-09-01T04:16:13.416605Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000001d",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/pod-logs",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/pod-logs",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/pod-logs",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/pod-logs",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:14.155087Z",
                            "start": "2026-09-01T04:16:13.928757Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000021",
                        "name": "creating directory for pod logs"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/pod-logs/failed-pods",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:14.389400Z",
                            "start": "2026-09-01T04:16:14.160555Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000022",
                        "name": "creating directory for failed pod logs"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\nfunction get_pods () {\n  NAMESPACE=$1\n  kubectl get pods -n ${NAMESPACE} -o name | awk -F '/' '{ print $NF }' | xargs -I {} echo ${NAMESPACE} {}\n}\nexport -f get_pods\nfunction get_pod_logs () {\n  NAMESPACE=${1% *}\n  POD=${1#* }\n  INIT_CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.initContainers[]?.name')\n  CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.containers[].name')\n  for CONTAINER in ${INIT_CONTAINERS} ${CONTAINERS}; do\n    echo \"${NAMESPACE}/${POD}/${CONTAINER}\"\n    mkdir -p \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}\"\n    mkdir -p \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}\"\n    kubectl logs ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n    kubectl logs --previous ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n  done\n}\nexport -f get_pod_logs\nget_namespaces |  xargs -r -I {} bash -c 'get_pods \"$@\"' _ {} |  xargs -r -I {} bash -c 'get_pod_logs \"$@\"' _ {}",
                            "delta": "0:00:00.007722",
                            "end": "2026-09-01 04:16:14.605993",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\nfunction get_pods () {\n  NAMESPACE=$1\n  kubectl get pods -n ${NAMESPACE} -o name | awk -F '/' '{ print $NF }' | xargs -I {} echo ${NAMESPACE} {}\n}\nexport -f get_pods\nfunction get_pod_logs () {\n  NAMESPACE=${1% *}\n  POD=${1#* }\n  INIT_CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.initContainers[]?.name')\n  CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.containers[].name')\n  for CONTAINER in ${INIT_CONTAINERS} ${CONTAINERS}; do\n    echo \"${NAMESPACE}/${POD}/${CONTAINER}\"\n    mkdir -p \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}\"\n    mkdir -p \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}\"\n    kubectl logs ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n    kubectl logs --previous ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n  done\n}\nexport -f get_pod_logs\nget_namespaces |  xargs -r -I {} bash -c 'get_pods \"$@\"' _ {} |  xargs -r -I {} bash -c 'get_pod_logs \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-000000000023-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:14.598271",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "environment: line 3: kubectl: command not found",
                            "stdout_lines": [
                                "environment: line 3: kubectl: command not found"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-000000000023-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:14.934276Z",
                            "start": "2026-09-01T04:16:14.412603Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000023",
                        "name": "retrieve all kubernetes logs, current and previous (if they exist)"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/tmp/logs/pod-logs /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@162.253.55.71:/tmp/logs/pod-logs",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ pod-logs/\ncd+++++++++ pod-logs/failed-pods/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ pod-logs/",
                                "cd+++++++++ pod-logs/failed-pods/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:15.434610Z",
                            "start": "2026-09-01T04:16:14.940310Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000024",
                        "name": "Downloads pod logs to executor"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/prometheus",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/prometheus",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/prometheus",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/prometheus",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:15.645036Z",
                            "start": "2026-09-01T04:16:15.447049Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000028",
                        "name": "creating directory for helm release descriptions"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nNAMESPACES=$(kubectl get namespaces -o json | jq -r '.items[].metadata.name')\nfor NS in $NAMESPACES; do\n  SERVICES=$(kubectl get svc -n $NS -o json | jq -r '.items[] | select(.spec.ports[].name==\"metrics\") | .metadata.name')\n  for SVC in $SERVICES; do\n    PORT=$(kubectl get svc $SVC -n $NS -o json | jq -r '.spec.ports[] | select(.name==\"metrics\") | .port')\n    echo \"Scraping $SVC.$NS:$PORT/metrics:\"\n    curl \"$SVC.$NS:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$NS-$SVC.txt || true\n  done\ndone",
                            "delta": "0:00:00.052867",
                            "end": "2026-09-01 04:16:15.926310",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nNAMESPACES=$(kubectl get namespaces -o json | jq -r '.items[].metadata.name')\nfor NS in $NAMESPACES; do\n  SERVICES=$(kubectl get svc -n $NS -o json | jq -r '.items[] | select(.spec.ports[].name==\"metrics\") | .metadata.name')\n  for SVC in $SERVICES; do\n    PORT=$(kubectl get svc $SVC -n $NS -o json | jq -r '.spec.ports[] | select(.name==\"metrics\") | .port')\n    echo \"Scraping $SVC.$NS:$PORT/metrics:\"\n    curl \"$SVC.$NS:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$NS-$SVC.txt || true\n  done\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-000000000029-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:15.873443",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/bin/bash: line 2: kubectl: command not found",
                            "stdout_lines": [
                                "/bin/bash: line 2: kubectl: command not found"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-000000000029-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:16.188458Z",
                            "start": "2026-09-01T04:16:15.667666Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000029",
                        "name": "Get metrics from exporter services in all namespaces"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nmgr_endpoints=$(kubectl get endpoints -n ceph -l component=manager -o json | jq -r '.items[].subsets[].addresses[].ip')\necho \"ceph-mgr endpoints: $mgr_endpoints\"\nfor endpoint in $mgr_endpoints; do\n  echo \"checking ceph-mgr at $endpoint\"\n  metrics_curl=\"curl $endpoint:9283/metrics\"\n  op=$(eval \"$metrics_curl\")\n  if [[ -n $op ]]; then\n    curl $endpoint:9283/metrics >> \"/tmp/logs\"/prometheus/ceph-ceph-mgr.txt\n    break\n  else\n    echo \"$endpoint is a standby ceph-mgr. Trying next endpoint\"\n  fi\ndone",
                            "delta": "0:00:00.056753",
                            "end": "2026-09-01 04:16:16.469542",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nmgr_endpoints=$(kubectl get endpoints -n ceph -l component=manager -o json | jq -r '.items[].subsets[].addresses[].ip')\necho \"ceph-mgr endpoints: $mgr_endpoints\"\nfor endpoint in $mgr_endpoints; do\n  echo \"checking ceph-mgr at $endpoint\"\n  metrics_curl=\"curl $endpoint:9283/metrics\"\n  op=$(eval \"$metrics_curl\")\n  if [[ -n $op ]]; then\n    curl $endpoint:9283/metrics >> \"/tmp/logs\"/prometheus/ceph-ceph-mgr.txt\n    break\n  else\n    echo \"$endpoint is a standby ceph-mgr. Trying next endpoint\"\n  fi\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-00000000002a-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:16.412789",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/bin/bash: line 2: kubectl: command not found\nceph-mgr endpoints: ",
                            "stdout_lines": [
                                "/bin/bash: line 2: kubectl: command not found",
                                "ceph-mgr endpoints: "
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-00000000002a-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:16.730915Z",
                            "start": "2026-09-01T04:16:16.211510Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000002a",
                        "name": "Get ceph metrics from ceph-mgr"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nNAMESPACE=\"osh-infra\"\nAPP_LABEL=\"fluentd\"\nPODS=$(kubectl get pods -n $NAMESPACE -l application=$APP_LABEL -o json | jq -r '.items[].metadata.name')\nfor POD in $PODS; do\n  IP=$(kubectl get pod -n $NAMESPACE $POD -o json | jq -r '.status.podIP')\n  PORT=$(kubectl get pod -n $NAMESPACE $POD -o json |  jq -r '.spec.containers[0].ports[] | select(.name==\"metrics\") | .containerPort')\n  echo \"Scraping $POD at $IP:$PORT/metrics\"\n  curl \"$IP:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$POD.txt || true\ndone",
                            "delta": "0:00:00.057205",
                            "end": "2026-09-01 04:16:17.008011",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nNAMESPACE=\"osh-infra\"\nAPP_LABEL=\"fluentd\"\nPODS=$(kubectl get pods -n $NAMESPACE -l application=$APP_LABEL -o json | jq -r '.items[].metadata.name')\nfor POD in $PODS; do\n  IP=$(kubectl get pod -n $NAMESPACE $POD -o json | jq -r '.status.podIP')\n  PORT=$(kubectl get pod -n $NAMESPACE $POD -o json |  jq -r '.spec.containers[0].ports[] | select(.name==\"metrics\") | .containerPort')\n  echo \"Scraping $POD at $IP:$PORT/metrics\"\n  curl \"$IP:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$POD.txt || true\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-00000000002b-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-09-01 04:16:16.950806",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/bin/bash: line 4: kubectl: command not found",
                            "stdout_lines": [
                                "/bin/bash: line 4: kubectl: command not found"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-00000000002b-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:17.276343Z",
                            "start": "2026-09-01T04:16:16.755187Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000002b",
                        "name": "Get metrics from fluentd pods"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/tmp/logs/prometheus /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@162.253.55.71:/tmp/logs/prometheus",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ prometheus/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ prometheus/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:17.783602Z",
                            "start": "2026-09-01T04:16:17.285979Z"
                        },
                        "id": "0242ac17-0010-581d-c886-00000000002c",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/selenium",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/selenium",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/selenium",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/selenium",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:18.022477Z",
                            "start": "2026-09-01T04:16:17.793730Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000030",
                        "name": "creating directory for helm release descriptions"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -x\ncp /tmp/artifacts/* /tmp/logs/selenium/.",
                            "delta": "0:00:00.005894",
                            "end": "2026-09-01 04:16:18.303453",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -x\ncp /tmp/artifacts/* /tmp/logs/selenium/.",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-581d-c886-000000000031-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-09-01 04:16:18.297559",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "+ cp '/tmp/artifacts/*' /tmp/logs/selenium/.\ncp: cannot stat '/tmp/artifacts/*': No such file or directory",
                            "stdout_lines": [
                                "+ cp '/tmp/artifacts/*' /tmp/logs/selenium/.",
                                "cp: cannot stat '/tmp/artifacts/*': No such file or directory"
                            ],
                            "zuul_log_id": "0242ac17-0010-581d-c886-000000000031-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:18.567124Z",
                            "start": "2026-09-01T04:16:18.046054Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000031",
                        "name": "Get selenium data"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/tmp/logs/selenium /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                            "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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/instance",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@162.253.55.71:/tmp/logs/selenium",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ selenium/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ selenium/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-581d-c886-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:19.072460Z",
                            "start": "2026-09-01T04:16:18.573301Z"
                        },
                        "id": "0242ac17-0010-581d-c886-000000000032",
                        "name": "Downloads logs to executor"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 23,
            "failures": 0,
            "ignored": 1,
            "ok": 23,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "1",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-09-01T04:16:23.216770Z",
                    "start": "2026-09-01T04:16:20.014714Z"
                },
                "id": "0242ac17-0010-1dfc-338d-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1dfc-338d-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:20.073006Z",
                            "start": "2026-09-01T04:16:20.026228Z"
                        },
                        "id": "0242ac17-0010-1dfc-338d-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1dfc-338d-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:20.127022Z",
                            "start": "2026-09-01T04:16:20.082505Z"
                        },
                        "id": "0242ac17-0010-1dfc-338d-000000000009",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1dfc-338d-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:20.964797Z",
                            "start": "2026-09-01T04:16:20.132900Z"
                        },
                        "id": "0242ac17-0010-1dfc-338d-00000000000a",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@162.253.55.71:/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs",
                                        "src": "logs"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@162.253.55.71:/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts",
                                        "src": "artifacts"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.71:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@162.253.55.71:/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1dfc-338d-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:22.550987Z",
                            "start": "2026-09-01T04:16:20.973339Z"
                        },
                        "id": "0242ac17-0010-1dfc-338d-00000000000c",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "shell",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts/* /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.009550",
                                    "end": "2026-09-01 04:16:22.949046",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/artifacts/* /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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-09-01 04:16:22.939496",
                                    "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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs/* /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007619",
                                    "end": "2026-09-01 04:16:23.168144",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/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/5e9cf7deda724bd88e9f4e7a4103f8ac/work/docs/* /var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/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-09-01 04:16:23.160525",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1dfc-338d-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:23.216770Z",
                            "start": "2026-09-01T04:16:22.566537Z"
                        },
                        "id": "0242ac17-0010-1dfc-338d-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-09-01T04:16:23.674419Z",
                    "start": "2026-09-01T04:16:23.227196Z"
                },
                "id": "0242ac17-0010-1dfc-338d-000000000013",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyf5+UFD6nUn7BVPKx9DFVa9bp8ScwXIqvsccOS3KD93LfCPEKb6oCyFLBUZ6fgeLI/k6igpxh14f8tJ1Pu0w9dQ/bTtWzzlwVvgco4bMrd5TCaQzns5wUnhOkXWz1fgABdv6NG4wo3A6cxrVb6TdwNyNNqOrar5k+eioRpJTi/S35G3lkXTtFPHgS0Fg9AB0b2NTefTug2feGvC5Xw2ODSShvIPigNW5ReCLt8Zger9/bbLEhoN5eH7GwAvvazljgOS2Kfu6I+RqyR7ShMU7JOILCw9GaizlZ5VYIg8tNGzYcf3yZ0INaV52OzLO9BfuJHWRIrrWCpdxvEVyW4Tb70GtTsYOZMoeThSdNfoxDswKx0pWefd6dx1XJQKaFceBvJ/uwEdZOAys/tkYJCLGY+4Tk1x6D1+FaxOC7oBGGoHmOCkT/uyPRnDnMNRqQ40ssPaJdLnpwnaM6TF3yxU8+91X6WabQkSCpIIXEnpA0esR1z0rWbxRJIrDP7HqBlu0= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyf5+UFD6nUn7BVPKx9DFVa9bp8ScwXIqvsccOS3KD93LfCPEKb6oCyFLBUZ6fgeLI/k6igpxh14f8tJ1Pu0w9dQ/bTtWzzlwVvgco4bMrd5TCaQzns5wUnhOkXWz1fgABdv6NG4wo3A6cxrVb6TdwNyNNqOrar5k+eioRpJTi/S35G3lkXTtFPHgS0Fg9AB0b2NTefTug2feGvC5Xw2ODSShvIPigNW5ReCLt8Zger9/bbLEhoN5eH7GwAvvazljgOS2Kfu6I+RqyR7ShMU7JOILCw9GaizlZ5VYIg8tNGzYcf3yZ0INaV52OzLO9BfuJHWRIrrWCpdxvEVyW4Tb70GtTsYOZMoeThSdNfoxDswKx0pWefd6dx1XJQKaFceBvJ/uwEdZOAys/tkYJCLGY+4Tk1x6D1+FaxOC7oBGGoHmOCkT/uyPRnDnMNRqQ40ssPaJdLnpwnaM6TF3yxU8+91X6WabQkSCpIIXEnpA0esR1z0rWbxRJIrDP7HqBlu0= 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-1dfc-338d-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/5e9cf7deda724bd88e9f4e7a4103f8ac/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-09-01T04:16:23.674419Z",
                            "start": "2026-09-01T04:16:23.233265Z"
                        },
                        "id": "0242ac17-0010-1dfc-338d-000000000018",
                        "name": "Remove the build SSH key from all nodes"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 4,
            "failures": 0,
            "ignored": 0,
            "ok": 5,
            "rescued": 0,
            "skipped": 1,
            "unreachable": 0
        }
    },
    "trusted": true
}
]
