[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-08T07:49:37.273128Z",
                    "start": "2026-06-08T07:49:34.548871Z"
                },
                "id": "0242ac17-0010-afa3-1783-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-06-08",
                                    "day": "08",
                                    "epoch": "1780904975",
                                    "epoch_int": "1780904975",
                                    "hour": "07",
                                    "iso8601": "2026-06-08T07:49:35Z",
                                    "iso8601_basic": "20260608T074935373318",
                                    "iso8601_basic_short": "20260608T074935",
                                    "iso8601_micro": "2026-06-08T07:49:35.373318Z",
                                    "minute": "49",
                                    "month": "06",
                                    "second": "35",
                                    "time": "07:49:35",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Monday",
                                    "weekday_number": "1",
                                    "weeknumber": "23",
                                    "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/dcc0833aeef84c1987d12919be094992/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work",
                                    "HOSTNAME": "2d72f0692154",
                                    "KUBECONFIG": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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": "2397783",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-s61wP1Wve9Vy/agent.2397782",
                                    "TMP": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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.63330078125,
                                    "1m": 2.060546875,
                                    "5m": 3.35009765625
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 6599,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 16426,
                                        "used": 15664
                                    },
                                    "real": {
                                        "free": 6599,
                                        "total": 32090,
                                        "used": 25491
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/kube",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 126500263,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 137440454,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 44605479,
                                        "inode_total": 67108864,
                                        "inode_used": 22503385,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 518145077248,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8412301,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32189279,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16375846,
                                        "inode_total": 20643840,
                                        "inode_used": 4267994,
                                        "mount": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34456784896,
                                        "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": 44568704,
                                "ansible_user_dir": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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-06-08T07:49:35.488177Z",
                            "start": "2026-06-08T07:49:34.557605Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:35.514131Z",
                            "start": "2026-06-08T07:49:35.492229Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "dcc/oss/dcc0833aeef84c1987d12919be094992"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:35.559109Z",
                            "start": "2026-06-08T07:49:35.528438Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-aio-ovn\nPipeline: check\nExecutor: 2d72f0692154\nTriggered by: https://github.com/vexxhost/atmosphere/pull/3501\nEvent ID: 59b915f0-630e-11f1-844a-bb8d5b758fe7\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:35.608950Z",
                            "start": "2026-06-08T07:49:35.568983Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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: np0000178878\nUsername: zuul\nDistro: Ubuntu 22.04\nProvider: yul1\nRegion: ca-ymq-1\nLabel: ubuntu-jammy-16\nProduct Name: OpenStack Nova\nInterface IP: 199.204.45.35\n",
                                    "zj_item": "instance"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:35.712855Z",
                            "start": "2026-06-08T07:49:35.612998Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:36.135380Z",
                            "start": "2026-06-08T07:49:35.721676Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "601f2d21c0245365f88c325402077d46031d9f6c",
                            "dest": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "601f2d21c0245365f88c325402077d46031d9f6c",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/.ansible/tmp/ansible-tmp-1780904976.1747818-84-137471583269801/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "9fcf0944e1f850740af4b7c816068212",
                            "mode": "0644",
                            "owner": "root",
                            "size": 46168,
                            "src": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/.ansible/tmp/ansible-tmp-1780904976.1747818-84-137471583269801/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:37.273128Z",
                            "start": "2026-06-08T07:49:36.143086Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-08T07:49:46.412590Z",
                    "start": "2026-06-08T07:49:37.279552Z"
                },
                "id": "0242ac17-0010-afa3-1783-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/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:37.526426Z",
                            "start": "2026-06-08T07:49:37.287632Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:37.572567Z",
                            "start": "2026-06-08T07:49:37.537444Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.645130",
                            "end": "2026-06-08 07:49:38.663271",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_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-afa3-1783-00000000009c-0-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:49:38.018141",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa.pub\nThe key fingerprint is:\nSHA256:/GF1wyohbD3R7+Y0wwhLGi+uM13byt5dU/Aeq/Bo6e8 zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|          ..     |\n|       . . ...   |\n|        + + ..=  |\n|       o..o+ o.+ |\n|        S=+o.+ .o|\n|        oo+o. B.+|\n|       o o.+.+ =o|\n|      o o..+=.o..|\n|      .+ .*++E.  |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:/GF1wyohbD3R7+Y0wwhLGi+uM13byt5dU/Aeq/Bo6e8 zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|          ..     |",
                                "|       . . ...   |",
                                "|        + + ..=  |",
                                "|       o..o+ o.+ |",
                                "|        S=+o.+ .o|",
                                "|        oo+o. B.+|",
                                "|       o o.+.+ =o|",
                                "|      o o..+=.o..|",
                                "|      .+ .*++E.  |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-afa3-1783-00000000009c-0-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:38.718440Z",
                            "start": "2026-06-08T07:49:37.596303Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:38.752854Z",
                            "start": "2026-06-08T07:49:38.723250Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:38.792569Z",
                            "start": "2026-06-08T07:49:38.768171Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDGd5trAGo001sSzemWV0dQQ8hkVVg7/xo/pnFrYyQd7tNBd9UGKuSkzEfawsIUSQbzzgFnv6/eMpmgB454Y/7kH3rcpTUlOuASUqEKj8FXQle9xWpjsJ0YSTeGSjc4jtjSyaHplGXoPOT6ZHyQ4icdDe2EwnkNIR3z+DqXvndG+4manY6z3se0Nf7Wrob6ZkaMBfQ0Mb7nx18wyFRo8lUotEEiz/zfBx6mtgePP6mZydtX/PS9Y5/daLb7A7K09O5F+g3T0vttBQPmJbL3l+Ebbw25VDmec1o/OjYg1Ng8GezQKARbXUZ1SQG1OrIkl+jPYW1WXpYuAZAEkcFfUyuPz+My7T+mH+ysqi+6QbRsfx6llmxplVz4urE2LAX07VGf9aUrNeWQ8ApUqd5UiB9vqRg9wSagKL+BP9OduBe0+weVBWtw3vn3uvZHlHZMmoBIvrS130E58YHyYLZMx1hX3tgQ69/BC6mIulCErHtnG64OzoAkdYJFiKmglVaU6QE= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDGd5trAGo001sSzemWV0dQQ8hkVVg7/xo/pnFrYyQd7tNBd9UGKuSkzEfawsIUSQbzzgFnv6/eMpmgB454Y/7kH3rcpTUlOuASUqEKj8FXQle9xWpjsJ0YSTeGSjc4jtjSyaHplGXoPOT6ZHyQ4icdDe2EwnkNIR3z+DqXvndG+4manY6z3se0Nf7Wrob6ZkaMBfQ0Mb7nx18wyFRo8lUotEEiz/zfBx6mtgePP6mZydtX/PS9Y5/daLb7A7K09O5F+g3T0vttBQPmJbL3l+Ebbw25VDmec1o/OjYg1Ng8GezQKARbXUZ1SQG1OrIkl+jPYW1WXpYuAZAEkcFfUyuPz+My7T+mH+ysqi+6QbRsfx6llmxplVz4urE2LAX07VGf9aUrNeWQ8ApUqd5UiB9vqRg9wSagKL+BP9OduBe0+weVBWtw3vn3uvZHlHZMmoBIvrS130E58YHyYLZMx1hX3tgQ69/BC6mIulCErHtnG64OzoAkdYJFiKmglVaU6QE= 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-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:39.269810Z",
                            "start": "2026-06-08T07:49:38.798263Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:39.521060Z",
                            "start": "2026-06-08T07:49:39.276205Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "fec9501319a5891a14534ca650a9a2315ad13b5a",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "dcc0833aeef84c1987d12919be094992_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "fec9501319a5891a14534ca650a9a2315ad13b5a",
                                    "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-1780904979.5692194-190-99203959208991/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "43a67bc7824306464f93843bfb7d03b6",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1780904979.5692194-190-99203959208991/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:40.022640Z",
                            "start": "2026-06-08T07:49:39.525611Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "b406a13086ee91a229ab9443c386407523ff9318",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "dcc0833aeef84c1987d12919be094992_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "b406a13086ee91a229ab9443c386407523ff9318",
                                    "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-1780904980.0718913-200-92257313513249/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "319fac73e8a8c0a86cf0a43998d965e3",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1780904980.0718913-200-92257313513249/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:40.518216Z",
                            "start": "2026-06-08T07:49:40.029554Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:40.560163Z",
                            "start": "2026-06-08T07:49:40.523788Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:40.971090Z",
                            "start": "2026-06-08T07:49:40.570328Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa"
                            ],
                            "delta": "0:00:00.012891",
                            "end": "2026-06-08 07:49:41.247554",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_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-afa3-1783-0000000000ab-0-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:49:41.234663",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/dcc0833aeef84c1987d12919be094992_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-afa3-1783-0000000000ab-0-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:41.301683Z",
                            "start": "2026-06-08T07:49:40.992064Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:41.614067Z",
                            "start": "2026-06-08T07:49:41.308264Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:41.648144Z",
                            "start": "2026-06-08T07:49:41.621177Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:41.963063Z",
                            "start": "2026-06-08T07:49:41.664783Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:45.216839Z",
                            "start": "2026-06-08T07:49:41.970838Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:45.771153Z",
                            "start": "2026-06-08T07:49:45.227925Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-afa3-1783-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:46.412590Z",
                            "start": "2026-06-08T07:49:45.776943Z"
                        },
                        "id": "0242ac17-0010-afa3-1783-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-06-08T07:50:06.130884Z",
                    "start": "2026-06-08T07:49:47.323170Z"
                },
                "id": "0242ac17-0010-8b2c-bd48-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-1780904987.376941-5-272395845705904/uv-x86_64-unknown-linux-gnucj_8zuph.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-1780904987.376941-5-272395845705904/uv-x86_64-unknown-linux-gnucj_8zuph.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8b2c-bd48-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:56.151391Z",
                            "start": "2026-06-08T07:49:47.335310Z"
                        },
                        "id": "0242ac17-0010-8b2c-bd48-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.010015",
                            "end": "2026-06-08 07:49:56.507915",
                            "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-8b2c-bd48-000000000008-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:49:56.497900",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-8b2c-bd48-000000000008-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8b2c-bd48-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:49:56.699335Z",
                            "start": "2026-06-08T07:49:56.179138Z"
                        },
                        "id": "0242ac17-0010-8b2c-bd48-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": true,
                                    "name": "ansible.utils",
                                    "path": "/home/zuul/src/github.com/ansible-collections/ansible.utils",
                                    "tag": "v6.0.2"
                                },
                                {
                                    "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.5.0"
                                },
                                {
                                    "changed": false,
                                    "name": "vexxhost.ceph",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-ceph",
                                    "tag": "v4.0.0"
                                },
                                {
                                    "changed": true,
                                    "name": "vexxhost.containers",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-containers",
                                    "tag": "v1.6.7"
                                },
                                {
                                    "changed": true,
                                    "name": "vexxhost.kubernetes",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "tag": "v3.1.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.0.2",
                                    "version": "6.0.2"
                                },
                                {
                                    "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.5.0",
                                    "version": "2.5.0"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "vexxhost.ceph",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-ceph",
                                    "spec": ">=3.2.0",
                                    "tag": "v4.0.0",
                                    "version": "4.0.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.7",
                                    "version": "1.6.7"
                                },
                                {
                                    "in_build_refs": false,
                                    "name": "vexxhost.kubernetes",
                                    "path": "/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "spec": ">=2.5.0",
                                    "tag": "v3.1.0",
                                    "version": "3.1.0"
                                }
                            ],
                            "invocation": {
                                "module_args": {
                                    "build_refs": [
                                        {
                                            "branch": "main",
                                            "change": "3501",
                                            "change_message": "chore(deps): update vexxhost images (main)\n\nThis PR contains the following updates:\n\n| Package | Update | Change |\n|---|---|---|\n| ghcr.io/vexxhost/barbican | digest | `eab0ec0` \u2192 `6ed1752` |\n| ghcr.io/vexxhost/cinder | digest | `abbffda` \u2192 `c765fde` |\n| ghcr.io/vexxhost/designate | digest | `08f191c` \u2192 `517b7c6` |\n| ghcr.io/vexxhost/glance | digest | `b9c065d` \u2192 `2e791d4` |\n| ghcr.io/vexxhost/heat | digest | `3be2b3d` \u2192 `899f87e` |\n| ghcr.io/vexxhost/horizon | digest | `e247f40` \u2192 `3e292dc` |\n| ghcr.io/vexxhost/ironic | digest | `3cf3aa6` \u2192 `15fd4f2` |\n| ghcr.io/vexxhost/keepalived | digest | `b794c04` \u2192 `0a4f2c5` |\n| ghcr.io/vexxhost/keystone | digest | `d821226` \u2192 `f5e22e6` |\n| ghcr.io/vexxhost/kubernetes-entrypoint | pinDigest |  \u2192 `8921b64` |\n| ghcr.io/vexxhost/libvirtd | digest | `3d8ac58` \u2192 `36fa3c8` |\n| ghcr.io/vexxhost/magnum | digest | `be30fc6` \u2192 `594e4c1` |\n| ghcr.io/vexxhost/manila | digest | `42eae6a` \u2192 `e9e58f6` |\n| ghcr.io/vexxhost/netoffload | digest | `cad35be` \u2192 `66d6905` |\n| ghcr.io/vexxhost/neutron | digest | `55f9c67` \u2192 `95ce655` |\n| ghcr.io/vexxhost/nova | digest | `4d20ff4` \u2192 `fba348a` |\n| ghcr.io/vexxhost/nova-ssh | digest | `b5063b6` \u2192 `7b8c92c` |\n| ghcr.io/vexxhost/octavia | digest | `13bfd0f` \u2192 `3a5d912` |\n| [ghcr.io/vexxhost/openvswitch](https://redirect.github.com/vexxhost/docker-openvswitch) | pinDigest |  \u2192 `2e86245` |\n| ghcr.io/vexxhost/ovn-bgp-agent | digest | `98f8038` \u2192 `432286d` |\n| ghcr.io/vexxhost/placement | digest | `ae9d401` \u2192 `0a09790` |\n| [ghcr.io/vexxhost/pod-tls-sidecar](https://redirect.github.com/vexxhost/pod-tls-sidecar) | pinDigest |  \u2192 `7a030f8` |\n| ghcr.io/vexxhost/python-openstackclient | digest | `09737a2` \u2192 `ed8c455` |\n| ghcr.io/vexxhost/staffeln | digest | `07d2b54` \u2192 `28af1c4` |\n| ghcr.io/vexxhost/tempest | digest | `193660a` \u2192 `c7b9bb2` |\n\n---\n\n### Configuration\n\n\ud83d\udcc5 **Schedule**: (UTC)\n\n- Branch creation\n  - \"before 5am on monday\"\n- Automerge\n  - At any time (no schedule defined)\n\n\ud83d\udea6 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.\n\n\u267b **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.\n\n\ud83d\udc7b **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.\n\n---\n\n - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDMuMjA5LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInNraXAtcmVsZWFzZS1ub3RlcyJdfQ==-->\n",
                                            "change_url": "https://github.com/vexxhost/atmosphere/pull/3501",
                                            "commit_id": "cb39bca3800068a94b8d1e3848b53028919abdae",
                                            "patchset": "cb39bca3800068a94b8d1e3848b53028919abdae",
                                            "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": "3501",
                                            "change_message": "chore(deps): update vexxhost images (main)\n\nThis PR contains the following updates:\n\n| Package | Update | Change |\n|---|---|---|\n| ghcr.io/vexxhost/barbican | digest | `eab0ec0` \u2192 `6ed1752` |\n| ghcr.io/vexxhost/cinder | digest | `abbffda` \u2192 `c765fde` |\n| ghcr.io/vexxhost/designate | digest | `08f191c` \u2192 `517b7c6` |\n| ghcr.io/vexxhost/glance | digest | `b9c065d` \u2192 `2e791d4` |\n| ghcr.io/vexxhost/heat | digest | `3be2b3d` \u2192 `899f87e` |\n| ghcr.io/vexxhost/horizon | digest | `e247f40` \u2192 `3e292dc` |\n| ghcr.io/vexxhost/ironic | digest | `3cf3aa6` \u2192 `15fd4f2` |\n| ghcr.io/vexxhost/keepalived | digest | `b794c04` \u2192 `0a4f2c5` |\n| ghcr.io/vexxhost/keystone | digest | `d821226` \u2192 `f5e22e6` |\n| ghcr.io/vexxhost/kubernetes-entrypoint | pinDigest |  \u2192 `8921b64` |\n| ghcr.io/vexxhost/libvirtd | digest | `3d8ac58` \u2192 `36fa3c8` |\n| ghcr.io/vexxhost/magnum | digest | `be30fc6` \u2192 `594e4c1` |\n| ghcr.io/vexxhost/manila | digest | `42eae6a` \u2192 `e9e58f6` |\n| ghcr.io/vexxhost/netoffload | digest | `cad35be` \u2192 `66d6905` |\n| ghcr.io/vexxhost/neutron | digest | `55f9c67` \u2192 `95ce655` |\n| ghcr.io/vexxhost/nova | digest | `4d20ff4` \u2192 `fba348a` |\n| ghcr.io/vexxhost/nova-ssh | digest | `b5063b6` \u2192 `7b8c92c` |\n| ghcr.io/vexxhost/octavia | digest | `13bfd0f` \u2192 `3a5d912` |\n| [ghcr.io/vexxhost/openvswitch](https://redirect.github.com/vexxhost/docker-openvswitch) | pinDigest |  \u2192 `2e86245` |\n| ghcr.io/vexxhost/ovn-bgp-agent | digest | `98f8038` \u2192 `432286d` |\n| ghcr.io/vexxhost/placement | digest | `ae9d401` \u2192 `0a09790` |\n| [ghcr.io/vexxhost/pod-tls-sidecar](https://redirect.github.com/vexxhost/pod-tls-sidecar) | pinDigest |  \u2192 `7a030f8` |\n| ghcr.io/vexxhost/python-openstackclient | digest | `09737a2` \u2192 `ed8c455` |\n| ghcr.io/vexxhost/staffeln | digest | `07d2b54` \u2192 `28af1c4` |\n| ghcr.io/vexxhost/tempest | digest | `193660a` \u2192 `c7b9bb2` |\n\n---\n\n### Configuration\n\n\ud83d\udcc5 **Schedule**: (UTC)\n\n- Branch creation\n  - \"before 5am on monday\"\n- Automerge\n  - At any time (no schedule defined)\n\n\ud83d\udea6 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.\n\n\u267b **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.\n\n\ud83d\udc7b **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.\n\n---\n\n - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDMuMjA5LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInNraXAtcmVsZWFzZS1ub3RlcyJdfQ==-->\n",
                                            "change_url": "https://github.com/vexxhost/atmosphere/pull/3501",
                                            "commit_id": "cb39bca3800068a94b8d1e3848b53028919abdae",
                                            "patchset": "cb39bca3800068a94b8d1e3848b53028919abdae",
                                            "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": "5e8bce3962751255a446afd072ce59b0f4f57c60",
                                            "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": "f7945c4bc9b5f976bc5e64c16ce0777027db0f6d",
                                            "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": "d2d3e6b411373b1c65156c15ee73b4258260b903",
                                            "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": "deb4ee3c24c6cc6c96fd2eb582c2a44f997972f0",
                                            "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": "877f20f278a35f89e41b9309387f514c8ef4e8d6",
                                            "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": "f69761f37cf6367d9693d0ac93c62b2c10e11cff",
                                            "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": "73f630a25d5c22f029e85298d9d47f3d94a014a6",
                                            "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": "62193e9ddde9e79c56f90d99f849a3471d119526",
                                            "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": "7b4edb1820fba744a11f967ca6e10ec27c480839",
                                            "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": "cb39bca3800068a94b8d1e3848b53028919abdae",
                                            "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": "c81422e3f6be86394284ce2db3e28ed87a530428",
                                            "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.0.2 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.5.0 for >=2.0.0",
                                "Resolved vexxhost.ceph to v4.0.0 for >=3.2.0",
                                "Resolved atmosphere.common to v0.7.0 for >=0.7.0",
                                "Resolved vexxhost.kubernetes to v3.1.0 for >=2.5.0",
                                "Resolved community.general to 7.3.0 for 7.3.0,>=4.5.0",
                                "Resolved ansible.utils to v6.0.2 for >=2.9.0,>=6.0.0",
                                "Resolved vexxhost.containers to v1.6.7 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 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.7 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 cryptography (4.2MiB)",
                                "Downloading rjsonnet (1.2MiB)",
                                "Downloading kubernetes (1.9MiB)",
                                "Downloading pygments (1.2MiB)",
                                "Downloading ansible-core (2.1MiB)",
                                "Downloading pydantic-core (2.0MiB)",
                                "Downloading openstacksdk (1.7MiB)",
                                "Downloading netaddr (2.2MiB)",
                                "   Building pyperclip==1.9.0",
                                " Downloading rjsonnet",
                                " Downloading pydantic-core",
                                " Downloading netaddr",
                                " Downloading pygments",
                                " Downloading cryptography",
                                " 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 42ms",
                                "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.0.2",
                                "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.0.2' to '/home/zuul/.ansible/collections/ansible_collections/ansible/utils'",
                                "Created collection for ansible.utils:6.0.2 at /home/zuul/.ansible/collections/ansible_collections/ansible/utils",
                                "ansible.utils:6.0.2 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.5.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.5.0' to '/home/zuul/.ansible/collections/ansible_collections/openstack/cloud'",
                                "Created collection for openstack.cloud:2.5.0 at /home/zuul/.ansible/collections/ansible_collections/openstack/cloud",
                                "openstack.cloud:2.5.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out vexxhost.ceph to v4.0.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.0.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph'",
                                "Created collection for vexxhost.ceph:4.0.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph",
                                "vexxhost.ceph:4.0.0 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out vexxhost.containers to v1.6.7",
                                "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.7' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers'",
                                "Created collection for vexxhost.containers:1.6.7 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/containers",
                                "vexxhost.containers:1.6.7 was installed successfully",
                                "[WARNING]: Collection ansible.netcommon does not support Ansible version",
                                "2.17.12",
                                "Checked out vexxhost.kubernetes to v3.1.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.1.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes'",
                                "Created collection for vexxhost.kubernetes:3.1.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes",
                                "vexxhost.kubernetes:3.1.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.0.2 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.5.0 for >=2.0.0\nResolved vexxhost.ceph to v4.0.0 for >=3.2.0\nResolved atmosphere.common to v0.7.0 for >=0.7.0\nResolved vexxhost.kubernetes to v3.1.0 for >=2.5.0\nResolved community.general to 7.3.0 for 7.3.0,>=4.5.0\nResolved ansible.utils to v6.0.2 for >=2.9.0,>=6.0.0\nResolved vexxhost.containers to v1.6.7 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 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.7 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 cryptography (4.2MiB)\nDownloading rjsonnet (1.2MiB)\nDownloading kubernetes (1.9MiB)\nDownloading pygments (1.2MiB)\nDownloading ansible-core (2.1MiB)\nDownloading pydantic-core (2.0MiB)\nDownloading openstacksdk (1.7MiB)\nDownloading netaddr (2.2MiB)\n   Building pyperclip==1.9.0\n Downloading rjsonnet\n Downloading pydantic-core\n Downloading netaddr\n Downloading pygments\n Downloading cryptography\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 42ms\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.0.2\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.0.2' to '/home/zuul/.ansible/collections/ansible_collections/ansible/utils'\nCreated collection for ansible.utils:6.0.2 at /home/zuul/.ansible/collections/ansible_collections/ansible/utils\nansible.utils:6.0.2 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.5.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.5.0' to '/home/zuul/.ansible/collections/ansible_collections/openstack/cloud'\nCreated collection for openstack.cloud:2.5.0 at /home/zuul/.ansible/collections/ansible_collections/openstack/cloud\nopenstack.cloud:2.5.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out vexxhost.ceph to v4.0.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.0.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph'\nCreated collection for vexxhost.ceph:4.0.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph\nvexxhost.ceph:4.0.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out vexxhost.containers to v1.6.7\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.7' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers'\nCreated collection for vexxhost.containers:1.6.7 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/containers\nvexxhost.containers:1.6.7 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12\nChecked out vexxhost.kubernetes to v3.1.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.1.0' to '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes'\nCreated collection for vexxhost.kubernetes:3.1.0 at /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes\nvexxhost.kubernetes:3.1.0 was installed successfully\n[WARNING]: Collection ansible.netcommon does not support Ansible version\n2.17.12"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:50:06.130884Z",
                            "start": "2026-06-08T07:49:56.709347Z"
                        },
                        "id": "0242ac17-0010-8b2c-bd48-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/test-playbooks/molecule/pre.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-08T07:50:17.472044Z",
                    "start": "2026-06-08T07:50:06.878528Z"
                },
                "id": "0242ac17-0010-0176-c28d-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.apt",
                            "cache_update_time": 1780905011,
                            "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 1 not upgraded.\nNeed to get 359 kB of archives.\nAfter this operation, 1087 kB of additional disk space will be used.\nGet:1 http://nova.clouds.archive.ubuntu.com/ubuntu jammy/main amd64 libonig5 amd64 6.9.7.1-2build1 [172 kB]\nGet:2 http://nova.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libjq1 amd64 1.6-2.1ubuntu3.2 [135 kB]\nGet:3 http://nova.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 jq amd64 1.6-2.1ubuntu3.2 [52.5 kB]\nFetched 359 kB in 0s (1932 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 ... 30923 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.13) ...\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 1 not upgraded.",
                                "Need to get 359 kB of archives.",
                                "After this operation, 1087 kB of additional disk space will be used.",
                                "Get:1 http://nova.clouds.archive.ubuntu.com/ubuntu jammy/main amd64 libonig5 amd64 6.9.7.1-2build1 [172 kB]",
                                "Get:2 http://nova.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libjq1 amd64 1.6-2.1ubuntu3.2 [135 kB]",
                                "Get:3 http://nova.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 jq amd64 1.6-2.1ubuntu3.2 [52.5 kB]",
                                "Fetched 359 kB in 0s (1932 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 ... 30923 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.13) ..."
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:50:17.472044Z",
                            "start": "2026-06-08T07:50:06.890490Z"
                        },
                        "id": "0242ac17-0010-0176-c28d-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-06-08T07:59:27.147664Z",
                    "start": "2026-06-08T07:50:18.197605Z"
                },
                "id": "0242ac17-0010-e17f-cbb1-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "601f2d21c0245365f88c325402077d46031d9f6c",
                            "dest": "src/github.com/vexxhost/atmosphere/inventory.yaml",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "601f2d21c0245365f88c325402077d46031d9f6c",
                                    "content": null,
                                    "dest": "src/github.com/vexxhost/atmosphere",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1780905018.2505913-5-29455102153458/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "9fcf0944e1f850740af4b7c816068212",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 46168,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1780905018.2505913-5-29455102153458/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:50:19.076127Z",
                            "start": "2026-06-08T07:50:18.209276Z"
                        },
                        "id": "0242ac17-0010-e17f-cbb1-000000000004",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "after": null,
                                    "attributes": null,
                                    "backup": false,
                                    "before": null,
                                    "encoding": "utf-8",
                                    "group": null,
                                    "mode": null,
                                    "owner": null,
                                    "path": "src/github.com/vexxhost/atmosphere/inventory.yaml",
                                    "regexp": "(^\\s*ansible_host:\\s*).*$",
                                    "replace": "\\1\"{{ nodepool.private_ipv4 }}\"",
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "msg": "1 replacements made",
                            "rc": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:50:19.431480Z",
                            "start": "2026-06-08T07:50:19.080710Z"
                        },
                        "id": "0242ac17-0010-e17f-cbb1-000000000005",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "aio"
                            ],
                            "delta": "0:09:06.842798",
                            "end": "2026-06-08 07:59:26.628319",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s aio",
                                    "_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-e17f-cbb1-000000000006-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 2,
                            "start": "2026-06-08 07:50:19.785521",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "WARNING  Molecule scenarios should migrate to 'extensions/molecule'\nINFO     [aio > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [aio > prerun] Performing prerun with role_name_check=0...\nINFO     [aio > dependency] Executing\nWARNING  [aio > dependency] Missing roles requirements file: requirements.yml\nWARNING  [aio > dependency] Missing collections requirements file: collections.yml\nWARNING  [aio > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [aio > cleanup] Executing\nWARNING  [aio > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [aio > destroy] Executing\nWARNING  [aio > destroy] Skipping, '--destroy=never' requested.\nINFO     [aio > destroy] Executed: Successful\nINFO     [aio > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/atmosphere/molecule/aio/converge.yml\nINFO     [aio > syntax] Executed: Successful\nINFO     [aio > create] Executing\nWARNING  [aio > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [aio > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:50:36 +0000 (0:00:00.026)       0:00:00.026 ***********\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] ************************************************\nMonday 08 June 2026  07:50:37 +0000 (0:00:01.243)       0:00:01.270 ***********\nchanged: [instance]\n\nTASK [Ensure hostname inside hosts file] ***************************************\nMonday 08 June 2026  07:50:38 +0000 (0:00:00.662)       0:00:01.933 ***********\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 [Install \"dirmngr\" for GPG keyserver operations] **************************\nMonday 08 June 2026  07:50:38 +0000 (0:00:00.266)       0:00:02.199 ***********\nok: [instance]\n\nTASK [Purge \"snapd\" package] ***************************************************\nMonday 08 June 2026  07:50:39 +0000 (0:00:01.284)       0:00:03.484 ***********\nok: [instance]\n\nPLAY [Generate workspace for Atmosphere] ***************************************\n\nTASK [Create folders for workspace] ********************************************\nMonday 08 June 2026  07:50:40 +0000 (0:00:00.789)       0:00:04.274 ***********\nchanged: [localhost] => (item=group_vars)\nchanged: [localhost] => (item=group_vars/all)\nchanged: [localhost] => (item=group_vars/controllers)\nchanged: [localhost] => (item=group_vars/cephs)\nchanged: [localhost] => (item=group_vars/computes)\nchanged: [localhost] => (item=host_vars)\n\nPLAY [Generate Ceph control plane configuration for workspace] *****************\n\nTASK [Ensure the Ceph control plane configuration file exists] *****************\nMonday 08 June 2026  07:50:41 +0000 (0:00:00.979)       0:00:05.253 ***********\nchanged: [localhost]\n\nTASK [Load the current Ceph control plane configuration into a variable] *******\nMonday 08 June 2026  07:50:41 +0000 (0:00:00.171)       0:00:05.424 ***********\nok: [localhost]\n\nTASK [Generate Ceph control plane values for missing variables] ****************\nMonday 08 June 2026  07:50:41 +0000 (0:00:00.019)       0:00:05.444 ***********\nok: [localhost] => (item={'key': 'ceph_fsid', 'value': '6a32e623-d066-5fb9-a347-ee643209da6e'})\nok: [localhost] => (item={'key': 'ceph_mon_public_network', 'value': '10.96.240.0/24'})\n\nTASK [Write new Ceph control plane configuration file to disk] *****************\nMonday 08 June 2026  07:50:41 +0000 (0:00:00.055)       0:00:05.499 ***********\nchanged: [localhost]\n\nPLAY [Generate Ceph OSD configuration for workspace] ***************************\n\nTASK [Ensure the Ceph OSDs configuration file exists] **************************\nMonday 08 June 2026  07:50:42 +0000 (0:00:00.593)       0:00:06.093 ***********\nchanged: [localhost]\n\nTASK [Load the current Ceph OSDs configuration into a variable] ****************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.906)       0:00:06.999 ***********\nok: [localhost]\n\nTASK [Generate Ceph OSDs values for missing variables] *************************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.026)       0:00:07.026 ***********\nok: [localhost] => (item={'key': 'ceph_osd_devices', 'value': ['/dev/vdb', '/dev/vdc', '/dev/vdd']})\n\nTASK [Write new Ceph OSDs configuration file to disk] **************************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.033)       0:00:07.060 ***********\nchanged: [localhost]\n\nPLAY [Generate Kubernetes configuration for workspace] *************************\n\nTASK [Ensure the Kubernetes configuration file exists] *************************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.350)       0:00:07.411 ***********\nchanged: [localhost]\n\nTASK [Load the current Kubernetes configuration into a variable] ***************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.172)       0:00:07.584 ***********\nok: [localhost]\n\nTASK [Generate Kubernetes values for missing variables] ************************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.024)       0:00:07.609 ***********\nok: [localhost] => (item={'key': 'kubernetes_hostname', 'value': '10.96.240.10'})\nok: [localhost] => (item={'key': 'kubernetes_keepalived_vrid', 'value': 42})\nok: [localhost] => (item={'key': 'kubernetes_keepalived_vip', 'value': '10.96.240.10'})\n\nTASK [Write new Kubernetes configuration file to disk] *************************\nMonday 08 June 2026  07:50:43 +0000 (0:00:00.042)       0:00:07.651 ***********\nchanged: [localhost]\n\nPLAY [Generate Keepalived configuration for workspace] *************************\n\nTASK [Ensure the Keeaplived configuration file exists] *************************\nMonday 08 June 2026  07:50:44 +0000 (0:00:00.345)       0:00:07.996 ***********\nchanged: [localhost]\n\nTASK [Load the current Keepalived configuration into a variable] ***************\nMonday 08 June 2026  07:50:44 +0000 (0:00:00.167)       0:00:08.164 ***********\nok: [localhost]\n\nTASK [Generate Keepalived values for missing variables] ************************\nMonday 08 June 2026  07:50:44 +0000 (0:00:00.030)       0:00:08.194 ***********\nok: [localhost] => (item={'key': 'keepalived_interface', 'value': 'br-ex'})\nok: [localhost] => (item={'key': 'keepalived_vip', 'value': '10.96.250.10'})\n\nTASK [Write new Keepalived configuration file to disk] *************************\nMonday 08 June 2026  07:50:44 +0000 (0:00:00.040)       0:00:08.235 ***********\nchanged: [localhost]\n\nPLAY [Generate endpoints for workspace] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:50:44 +0000 (0:00:00.378)       0:00:08.614 ***********\nok: [localhost]\n\nTASK [Ensure the endpoints file exists] ****************************************\nMonday 08 June 2026  07:50:45 +0000 (0:00:00.680)       0:00:09.294 ***********\nchanged: [localhost]\n\nTASK [Load the current endpoints into a variable] ******************************\nMonday 08 June 2026  07:50:45 +0000 (0:00:00.171)       0:00:09.466 ***********\nok: [localhost]\n\nTASK [Generate endpoint skeleton for missing variables] ************************\nMonday 08 June 2026  07:50:45 +0000 (0:00:00.029)       0:00:09.495 ***********\nok: [localhost] => (item=keycloak_host)\nok: [localhost] => (item=kube_prometheus_stack_grafana_host)\nok: [localhost] => (item=kube_prometheus_stack_alertmanager_host)\nok: [localhost] => (item=kube_prometheus_stack_prometheus_host)\nok: [localhost] => (item=openstack_helm_endpoints_region_name)\nok: [localhost] => (item=openstack_helm_endpoints_keystone_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_glance_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_cinder_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_placement_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_barbican_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_neutron_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_nova_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_nova_novnc_host)\nok: [localhost] => (item=openstack_helm_endpoints_ironic_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_designate_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_octavia_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_magnum_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_magnum_registry_host)\nok: [localhost] => (item=openstack_helm_endpoints_heat_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_heat_cfn_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_horizon_api_host)\nok: [localhost] => (item=openstack_helm_endpoints_rgw_host)\nok: [localhost] => (item=openstack_helm_endpoints_manila_api_host)\n\nTASK [Write new endpoints file to disk] ****************************************\nMonday 08 June 2026  07:50:46 +0000 (0:00:00.742)       0:00:10.237 ***********\nchanged: [localhost]\n\nTASK [Ensure the endpoints file exists] ****************************************\nMonday 08 June 2026  07:50:46 +0000 (0:00:00.333)       0:00:10.571 ***********\nchanged: [localhost]\n\nPLAY [Generate Neutron configuration for workspace] ****************************\n\nTASK [Ensure the Neutron configuration file exists] ****************************\nMonday 08 June 2026  07:50:46 +0000 (0:00:00.171)       0:00:10.743 ***********\nchanged: [localhost]\n\nTASK [Load the current Neutron configuration into a variable] ******************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.175)       0:00:10.918 ***********\nok: [localhost]\n\nTASK [Generate Neutron values for missing variables] ***************************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.033)       0:00:10.951 ***********\nok: [localhost] => (item={'key': 'neutron_networks', 'value': [{'name': 'public', 'external': True, 'shared': True, 'mtu_size': 1500, 'port_security_enabled': True, 'provider_network_type': 'flat', 'provider_physical_network': 'external', 'subnets': [{'name': 'public-subnet', 'cidr': '10.96.250.0/24', 'gateway_ip': '10.96.250.10', 'allocation_pool_start': '10.96.250.200', 'allocation_pool_end': '10.96.250.220', 'enable_dhcp': True}]}]})\n\nTASK [Write new Neutron configuration file to disk] ****************************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.045)       0:00:10.997 ***********\nchanged: [localhost]\n\nPLAY [Generate Nova configuration for workspace] *******************************\n\nTASK [Ensure the Nova configuration file exists] *******************************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.365)       0:00:11.362 ***********\nchanged: [localhost]\n\nTASK [Load the current Nova configuration into a variable] *********************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.174)       0:00:11.536 ***********\nok: [localhost]\n\nTASK [Generate Nova values for missing variables] ******************************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.030)       0:00:11.566 ***********\nok: [localhost] => (item={'key': 'nova_flavors', 'value': [{'name': 'm1.tiny', 'ram': 512, 'disk': 1, 'vcpus': 1}, {'name': 'm1.small', 'ram': 2048, 'disk': 20, 'vcpus': 1}, {'name': 'm1.medium', 'ram': 4096, 'disk': 40, 'vcpus': 2}, {'name': 'm1.large', 'ram': 8192, 'disk': 80, 'vcpus': 4}, {'name': 'm1.xlarge', 'ram': 16384, 'disk': 160, 'vcpus': 8}]})\n\nTASK [Write new Nova configuration file to disk] *******************************\nMonday 08 June 2026  07:50:47 +0000 (0:00:00.043)       0:00:11.609 ***********\nchanged: [localhost]\n\nPLAY [Generate secrets for workspace] ******************************************\n\nTASK [Ensure the secrets file exists] ******************************************\nMonday 08 June 2026  07:50:48 +0000 (0:00:00.358)       0:00:11.967 ***********\nchanged: [localhost]\n\nTASK [Load the current secrets into a variable] ********************************\nMonday 08 June 2026  07:50:48 +0000 (0:00:00.192)       0:00:12.160 ***********\nok: [localhost]\n\nTASK [Generate secrets for missing variables] **********************************\nMonday 08 June 2026  07:50:48 +0000 (0:00:00.035)       0:00:12.196 ***********\nok: [localhost] => (item=heat_auth_encryption_key)\nok: [localhost] => (item=keepalived_password)\nok: [localhost] => (item=keycloak_admin_password)\nok: [localhost] => (item=keycloak_database_password)\nok: [localhost] => (item=keystone_keycloak_client_secret)\nok: [localhost] => (item=keystone_oidc_crypto_passphrase)\nok: [localhost] => (item=kube_prometheus_stack_grafana_admin_password)\nok: [localhost] => (item=octavia_heartbeat_key)\nok: [localhost] => (item=openstack_helm_endpoints_rabbitmq_admin_password)\nok: [localhost] => (item=openstack_helm_endpoints_memcached_secret_key)\nok: [localhost] => (item=openstack_helm_endpoints_keystone_admin_password)\nok: [localhost] => (item=openstack_helm_endpoints_keystone_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_keystone_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_glance_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_glance_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_glance_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_cinder_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_cinder_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_cinder_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_placement_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_placement_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_barbican_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_barbican_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_neutron_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_neutron_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_neutron_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_neutron_metadata_secret)\nok: [localhost] => (item=openstack_helm_endpoints_nova_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_nova_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_nova_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_ironic_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_ironic_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_ironic_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_designate_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_designate_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_designate_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_octavia_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_octavia_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_octavia_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_magnum_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_magnum_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_magnum_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_heat_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_heat_trustee_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_heat_stack_user_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_heat_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_heat_rabbitmq_password)\nok: [localhost] => (item=openstack_helm_endpoints_horizon_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_tempest_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_openstack_exporter_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_rgw_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_manila_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_manila_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_staffeln_mariadb_password)\n\nTASK [Generate base64 encoded secrets] *****************************************\nMonday 08 June 2026  07:50:48 +0000 (0:00:00.415)       0:00:12.611 ***********\nok: [localhost] => (item=barbican_kek)\n\nTASK [Generate temporary files for generating keys for missing variables] ******\nMonday 08 June 2026  07:50:48 +0000 (0:00:00.060)       0:00:12.672 ***********\nchanged: [localhost] => (item=manila_ssh_key)\nchanged: [localhost] => (item=nova_ssh_key)\n\nTASK [Generate SSH keys for missing variables] *********************************\nMonday 08 June 2026  07:50:49 +0000 (0:00:00.478)       0:00:13.150 ***********\nchanged: [localhost] => (item=manila_ssh_key)\nchanged: [localhost] => (item=nova_ssh_key)\n\nTASK [Set values for SSH keys] *************************************************\nMonday 08 June 2026  07:50:53 +0000 (0:00:04.093)       0:00:17.244 ***********\nok: [localhost] => (item=manila_ssh_key)\nok: [localhost] => (item=nova_ssh_key)\n\nTASK [Delete the temporary files generated for SSH keys] ***********************\nMonday 08 June 2026  07:50:53 +0000 (0:00:00.070)       0:00:17.314 ***********\nchanged: [localhost] => (item=manila_ssh_key)\nchanged: [localhost] => (item=nova_ssh_key)\n\nTASK [Write new secrets file to disk] ******************************************\nMonday 08 June 2026  07:50:53 +0000 (0:00:00.345)       0:00:17.660 ***********\nchanged: [localhost]\n\nTASK [Encrypt secrets file with Vault password] ********************************\nMonday 08 June 2026  07:50:54 +0000 (0:00:00.362)       0:00:18.023 ***********\nskipping: [localhost]\n\nPLAY [Setup networking] ********************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:50:54 +0000 (0:00:00.030)       0:00:18.054 ***********\nok: [instance]\n\nTASK [Create bridge for management network] ************************************\nMonday 08 June 2026  07:50:54 +0000 (0:00:00.687)       0:00:18.741 ***********\nok: [instance]\n\nTASK [Create fake interface for management bridge] *****************************\nMonday 08 June 2026  07:50:55 +0000 (0:00:00.313)       0:00:19.054 ***********\nok: [instance]\n\nTASK [Assign dummy interface to management bridge] *****************************\nMonday 08 June 2026  07:50:55 +0000 (0:00:00.206)       0:00:19.261 ***********\nok: [instance]\n\nTASK [Assign IP address for management bridge] *********************************\nMonday 08 June 2026  07:50:55 +0000 (0:00:00.184)       0:00:19.446 ***********\nok: [instance]\n\nTASK [Bring up interfaces] *****************************************************\nMonday 08 June 2026  07:50:55 +0000 (0:00:00.198)       0:00:19.644 ***********\nok: [instance] => (item=br-mgmt)\nok: [instance] => (item=dummy0)\n\nPLAY [Create devices for Ceph] *************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:50:56 +0000 (0:00:00.396)       0:00:20.040 ***********\nok: [instance]\n\nTASK [Install depedencies] *****************************************************\nMonday 08 June 2026  07:50:56 +0000 (0:00:00.749)       0:00:20.790 ***********\nchanged: [instance]\n\nTASK [Start up service] ********************************************************\nMonday 08 June 2026  07:51:18 +0000 (0:00:22.011)       0:00:42.801 ***********\nok: [instance]\n\nTASK [Generate lvm.conf] *******************************************************\nMonday 08 June 2026  07:51:19 +0000 (0:00:00.542)       0:00:43.344 ***********\nok: [instance]\n\nTASK [Write /etc/lvm/lvm.conf] *************************************************\nMonday 08 June 2026  07:51:19 +0000 (0:00:00.218)       0:00:43.563 ***********\nchanged: [instance]\n\nTASK [Get list of all loopback devices] ****************************************\nMonday 08 June 2026  07:51:20 +0000 (0:00:00.463)       0:00:44.026 ***********\nok: [instance]\n\nTASK [Fail if there is any existing loopback devices] **************************\nMonday 08 June 2026  07:51:20 +0000 (0:00:00.199)       0:00:44.225 ***********\nskipping: [instance]\n\nTASK [Create devices for Ceph] *************************************************\nMonday 08 June 2026  07:51:20 +0000 (0:00:00.027)       0:00:44.253 ***********\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Set permissions on loopback devices] *************************************\nMonday 08 June 2026  07:51:21 +0000 (0:00:01.562)       0:00:45.816 ***********\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Start loop devices] ******************************************************\nMonday 08 June 2026  07:51:22 +0000 (0:00:00.534)       0:00:46.350 ***********\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Create a volume group for each loop device] ******************************\nMonday 08 June 2026  07:51:23 +0000 (0:00:00.712)       0:00:47.062 ***********\nchanged: [instance] => (item=osd0)\nchanged: [instance] => (item=osd1)\nchanged: [instance] => (item=osd2)\n\nTASK [Create a logical volume for each loop device] ****************************\nMonday 08 June 2026  07:51:26 +0000 (0:00:03.082)       0:00:50.144 ***********\nchanged: [instance] => (item=ceph-instance-osd0)\nchanged: [instance] => (item=ceph-instance-osd1)\nchanged: [instance] => (item=ceph-instance-osd2)\n\nPLAY [controllers] *************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:51:28 +0000 (0:00:01.838)       0:00:51.983 ***********\nok: [instance]\n\nTASK [Set masquerade rule] *****************************************************\nMonday 08 June 2026  07:51:29 +0000 (0:00:00.963)       0:00:52.947 ***********\nchanged: [instance]\n\nPLAY RECAP *********************************************************************\ninstance                   : ok=24   changed=10   unreachable=0    failed=0    skipped=1    rescued=0    ignored=0\nlocalhost                  : ok=40   changed=21   unreachable=0    failed=0    skipped=1    rescued=0    ignored=0\n\nMonday 08 June 2026  07:51:29 +0000 (0:00:00.479)       0:00:53.427 ***********\n===============================================================================\nInstall depedencies ---------------------------------------------------- 22.01s\nGenerate SSH keys for missing variables --------------------------------- 4.09s\nCreate a volume group for each loop device ------------------------------ 3.08s\nCreate a logical volume for each loop device ---------------------------- 1.84s\nCreate devices for Ceph ------------------------------------------------- 1.56s\nInstall \"dirmngr\" for GPG keyserver operations -------------------------- 1.28s\nGathering Facts --------------------------------------------------------- 1.24s\nCreate folders for workspace -------------------------------------------- 0.98s\nGathering Facts --------------------------------------------------------- 0.96s\nEnsure the Ceph OSDs configuration file exists -------------------------- 0.91s\nPurge \"snapd\" package --------------------------------------------------- 0.79s\nGathering Facts --------------------------------------------------------- 0.75s\nGenerate endpoint skeleton for missing variables ------------------------ 0.74s\nStart loop devices ------------------------------------------------------ 0.71s\nGathering Facts --------------------------------------------------------- 0.69s\nGathering Facts --------------------------------------------------------- 0.68s\nConfigure short hostname ------------------------------------------------ 0.66s\nWrite new Ceph control plane configuration file to disk ----------------- 0.59s\nStart up service -------------------------------------------------------- 0.54s\nSet permissions on loopback devices ------------------------------------- 0.53s\nINFO     [aio > prepare] Executed: Successful\nINFO     [aio > converge] Executing\n\nPLAY [all] *********************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:51:32 +0000 (0:00:00.017)       0:00:00.017 ***********\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 [Fail if atmosphere_ceph_enabled is set] **********************************\nMonday 08 June 2026  07:51:33 +0000 (0:00:01.210)       0:00:01.227 ***********\nskipping: [instance]\n\nTASK [Set a fact with the \"atmosphere_images\" for other plays] *****************\nMonday 08 June 2026  07:51:33 +0000 (0:00:00.041)       0:00:01.268 ***********\nok: [instance]\n\nPLAY [Deploy Ceph monitors & managers] *****************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:51:34 +0000 (0:00:00.183)       0:00:01.452 ***********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:51:34 +0000 (0:00:00.878)       0:00:02.330 ***********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:51:35 +0000 (0:00:00.284)       0:00:02.614 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 08 June 2026  07:51:35 +0000 (0:00:00.054)       0:00:02.668 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:51:35 +0000 (0:00:00.427)       0:00:03.096 ***********\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] *******************\nMonday 08 June 2026  07:51:35 +0000 (0:00:00.078)       0:00:03.174 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:51:36 +0000 (0:00:00.724)       0:00:03.898 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:51:36 +0000 (0:00:00.053)       0:00:03.952 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:51:36 +0000 (0:00:00.048)       0:00:04.001 ***********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:51:36 +0000 (0:00:00.218)       0:00:04.220 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:51:38 +0000 (0:00:01.420)       0:00:05.641 ***********\nok: [instance] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:51:38 +0000 (0:00:00.081)       0:00:05.722 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:51:43 +0000 (0:00:04.913)       0:00:10.636 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 08 June 2026  07:51:46 +0000 (0:00:02.969)       0:00:13.605 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 08 June 2026  07:51:46 +0000 (0:00:00.039)       0:00:13.645 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 08 June 2026  07:51:46 +0000 (0:00:00.032)       0:00:13.678 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 08 June 2026  07:51:46 +0000 (0:00:00.037)       0:00:13.716 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 08 June 2026  07:51:52 +0000 (0:00:06.044)       0:00:19.761 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 08 June 2026  07:51:52 +0000 (0:00:00.657)       0:00:20.418 ***********\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] **********\nMonday 08 June 2026  07:51:53 +0000 (0:00:00.942)       0:00:21.360 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 08 June 2026  07:51:54 +0000 (0:00:00.622)       0:00:21.982 ***********\n\nRUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************\nMonday 08 June 2026  07:51:54 +0000 (0:00:00.008)       0:00:21.991 ***********\nok: [instance]\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nMonday 08 June 2026  07:51:55 +0000 (0:00:00.989)       0:00:22.981 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 08 June 2026  07:51:56 +0000 (0:00:00.464)       0:00:23.445 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:51:56 +0000 (0:00:00.544)       0:00:23.989 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:51:56 +0000 (0:00:00.219)       0:00:24.209 ***********\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] *******************\nMonday 08 June 2026  07:51:56 +0000 (0:00:00.064)       0:00:24.273 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:51:57 +0000 (0:00:00.956)       0:00:25.229 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Install AppArmor packages] ******************\nMonday 08 June 2026  07:52:02 +0000 (0:00:04.489)       0:00:29.718 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Ensure group \"docker\" exists] ***************\nMonday 08 June 2026  07:52:03 +0000 (0:00:01.047)       0:00:30.766 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Create systemd service file for docker] *****\nMonday 08 June 2026  07:52:03 +0000 (0:00:00.390)       0:00:31.157 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Create folders for configuration] ***********\nMonday 08 June 2026  07:52:04 +0000 (0:00:00.479)       0:00:31.637 ***********\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] ******\nMonday 08 June 2026  07:52:04 +0000 (0:00:00.570)       0:00:32.208 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Create docker daemon config file] ***********\nMonday 08 June 2026  07:52:05 +0000 (0:00:00.477)       0:00:32.685 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Force any restarts if necessary] ************\nMonday 08 June 2026  07:52:05 +0000 (0:00:00.467)       0:00:33.152 ***********\n\nRUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************\nMonday 08 June 2026  07:52:05 +0000 (0:00:00.008)       0:00:33.160 ***********\nok: [instance]\n\nRUNNING HANDLER [vexxhost.containers.docker : Restart docker] ******************\nMonday 08 June 2026  07:52:06 +0000 (0:00:00.675)       0:00:33.835 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.docker : Enable and start service] *******************\nMonday 08 June 2026  07:52:07 +0000 (0:00:01.259)       0:00:35.095 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Gather variables for each operating system] ******\nMonday 08 June 2026  07:52:08 +0000 (0:00:00.552)       0:00:35.647 ***********\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] ********************************\nMonday 08 June 2026  07:52:08 +0000 (0:00:00.064)       0:00:35.711 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Ensure services are started] *********************\nMonday 08 June 2026  07:52:13 +0000 (0:00:05.168)       0:00:40.880 ***********\nok: [instance] => (item=chronyd)\nok: [instance] => (item=sshd)\n\nTASK [vexxhost.ceph.cephadm : Download \"cephadm\"] ******************************\nMonday 08 June 2026  07:52:14 +0000 (0:00:00.670)       0:00:41.550 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Remove cephadm from old path] ********************\nMonday 08 June 2026  07:52:14 +0000 (0:00:00.295)       0:00:41.846 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Ensure \"cephadm\" user is present] ****************\nMonday 08 June 2026  07:52:14 +0000 (0:00:00.234)       0:00:42.081 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.cephadm : Allow \"cephadm\" user to have passwordless sudo] ***\nMonday 08 June 2026  07:52:15 +0000 (0:00:00.467)       0:00:42.548 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Set Ceph Monitor IP address] *************************\nMonday 08 June 2026  07:52:15 +0000 (0:00:00.371)       0:00:42.920 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Check if any node is bootstrapped] *******************\nMonday 08 June 2026  07:52:15 +0000 (0:00:00.128)       0:00:43.048 ***********\nok: [instance] => (item=instance)\n\nTASK [vexxhost.ceph.mon : Select pre-existing bootstrap node if exists] ********\nMonday 08 June 2026  07:52:15 +0000 (0:00:00.233)       0:00:43.282 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Bootstrap cluster] ***********************************\nMonday 08 June 2026  07:52:15 +0000 (0:00:00.060)       0:00:43.342 ***********\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\"] *************\nMonday 08 June 2026  07:52:15 +0000 (0:00:00.076)       0:00:43.419 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Include extra configuration values] ******************\nMonday 08 June 2026  07:52:16 +0000 (0:00:00.337)       0:00:43.756 ***********\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] *******************************\nMonday 08 June 2026  07:52:17 +0000 (0:00:00.726)       0:00:44.483 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Remove temporary file for \"ceph.conf\"] ***************\nMonday 08 June 2026  07:53:52 +0000 (0:01:35.899)       0:02:20.383 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Set bootstrap node] **********************************\nMonday 08 June 2026  07:53:53 +0000 (0:00:00.213)       0:02:20.597 ***********\nok: [instance]\n\nTASK [Install Ceph host] *******************************************************\nMonday 08 June 2026  07:53:53 +0000 (0:00:00.044)       0:02:20.642 ***********\nincluded: vexxhost.ceph.cephadm_host for instance\n\nTASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******\nMonday 08 June 2026  07:53:53 +0000 (0:00:00.089)       0:02:20.731 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***\nMonday 08 June 2026  07:53:58 +0000 (0:00:05.633)       0:02:26.364 ***********\nok: [instance] => (item=instance)\n\nTASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********\nMonday 08 June 2026  07:53:58 +0000 (0:00:00.054)       0:02:26.418 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************\nMonday 08 June 2026  07:53:59 +0000 (0:00:00.412)       0:02:26.831 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.mon : Configure \"mon\" label for monitors] ******************\nMonday 08 June 2026  07:54:05 +0000 (0:00:06.365)       0:02:33.196 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.mon : Validate monitor exist] ******************************\nMonday 08 June 2026  07:54:59 +0000 (0:00:54.100)       0:03:27.297 ***********\nok: [instance]\n\nTASK [Install Ceph host] *******************************************************\nMonday 08 June 2026  07:55:13 +0000 (0:00:14.056)       0:03:41.353 ***********\nincluded: vexxhost.ceph.cephadm_host for instance\n\nTASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******\nMonday 08 June 2026  07:55:14 +0000 (0:00:00.079)       0:03:41.433 ***********\nskipping: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***\nMonday 08 June 2026  07:55:14 +0000 (0:00:00.063)       0:03:41.496 ***********\nskipping: [instance] => (item=instance)\nskipping: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********\nMonday 08 June 2026  07:55:14 +0000 (0:00:00.054)       0:03:41.551 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************\nMonday 08 June 2026  07:55:14 +0000 (0:00:00.249)       0:03:41.800 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.mgr : Configure \"mgr\" label for managers] ******************\nMonday 08 June 2026  07:55:20 +0000 (0:00:06.355)       0:03:48.155 ***********\nchanged: [instance]\n\nTASK [vexxhost.ceph.mgr : Validate manager exist] ******************************\nMonday 08 June 2026  07:55:32 +0000 (0:00:12.108)       0:04:00.264 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.mgr : Configure manager modules] ***************************\nMonday 08 June 2026  07:55:38 +0000 (0:00:05.977)       0:04:06.242 ***********\nchanged: [instance] => (item={'name': 'diskprediction_local'})\nok: [instance] => (item={'name': 'dashboard'})\nchanged: [instance] => (item={'name': 'prometheus'})\nok: [instance] => (item={'name': 'iostat'})\n\nPLAY [Deploy Ceph OSDs] ********************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:55:46 +0000 (0:00:07.902)       0:04:14.144 ***********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:55:47 +0000 (0:00:00.884)       0:04:15.029 ***********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:55:47 +0000 (0:00:00.209)       0:04:15.239 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 08 June 2026  07:55:47 +0000 (0:00:00.038)       0:04:15.277 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:55:48 +0000 (0:00:00.209)       0:04:15.486 ***********\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] *******************\nMonday 08 June 2026  07:55:48 +0000 (0:00:00.055)       0:04:15.542 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:55:48 +0000 (0:00:00.283)       0:04:15.825 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:55:48 +0000 (0:00:00.045)       0:04:15.870 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:55:48 +0000 (0:00:00.048)       0:04:15.919 ***********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:55:48 +0000 (0:00:00.212)       0:04:16.131 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:55:49 +0000 (0:00:01.236)       0:04:17.368 ***********\nok: [instance] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:55:50 +0000 (0:00:00.064)       0:04:17.433 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:55:50 +0000 (0:00:00.345)       0:04:17.778 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 08 June 2026  07:55:52 +0000 (0:00:01.902)       0:04:19.681 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 08 June 2026  07:55:52 +0000 (0:00:00.027)       0:04:19.709 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 08 June 2026  07:55:52 +0000 (0:00:00.034)       0:04:19.743 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 08 June 2026  07:55:52 +0000 (0:00:00.035)       0:04:19.778 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 08 June 2026  07:55:53 +0000 (0:00:01.256)       0:04:21.035 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 08 June 2026  07:55:54 +0000 (0:00:00.435)       0:04:21.471 ***********\nok: [instance] => (item={'path': '/etc/containerd'})\nok: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nMonday 08 June 2026  07:55:54 +0000 (0:00:00.894)       0:04:22.366 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 08 June 2026  07:55:55 +0000 (0:00:00.531)       0:04:22.897 ***********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 08 June 2026  07:55:55 +0000 (0:00:00.008)       0:04:22.905 ***********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:55:55 +0000 (0:00:00.337)       0:04:23.243 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:55:56 +0000 (0:00:00.210)       0:04:23.454 ***********\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] *******************\nMonday 08 June 2026  07:55:56 +0000 (0:00:00.053)       0:04:23.507 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:55:56 +0000 (0:00:00.331)       0:04:23.839 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Install AppArmor packages] ******************\nMonday 08 June 2026  07:55:59 +0000 (0:00:03.049)       0:04:26.888 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Ensure group \"docker\" exists] ***************\nMonday 08 June 2026  07:56:00 +0000 (0:00:01.329)       0:04:28.217 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Create systemd service file for docker] *****\nMonday 08 June 2026  07:56:00 +0000 (0:00:00.197)       0:04:28.415 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Create folders for configuration] ***********\nMonday 08 June 2026  07:56:01 +0000 (0:00:00.416)       0:04:28.831 ***********\nok: [instance] => (item={'path': '/etc/docker'})\nok: [instance] => (item={'path': '/var/lib/docker', 'mode': '0o710'})\nok: [instance] => (item={'path': '/run/docker', 'mode': '0o711'})\n\nTASK [vexxhost.containers.docker : Create systemd socket file for docker] ******\nMonday 08 June 2026  07:56:01 +0000 (0:00:00.554)       0:04:29.386 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Create docker daemon config file] ***********\nMonday 08 June 2026  07:56:02 +0000 (0:00:00.420)       0:04:29.806 ***********\nok: [instance]\n\nTASK [vexxhost.containers.docker : Force any restarts if necessary] ************\nMonday 08 June 2026  07:56:02 +0000 (0:00:00.417)       0:04:30.223 ***********\n\nTASK [vexxhost.containers.docker : Enable and start service] *******************\nMonday 08 June 2026  07:56:02 +0000 (0:00:00.007)       0:04:30.231 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Gather variables for each operating system] ******\nMonday 08 June 2026  07:56:03 +0000 (0:00:00.342)       0:04:30.573 ***********\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] ********************************\nMonday 08 June 2026  07:56:03 +0000 (0:00:00.057)       0:04:30.631 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Ensure services are started] *********************\nMonday 08 June 2026  07:56:04 +0000 (0:00:01.207)       0:04:31.839 ***********\nok: [instance] => (item=chronyd)\nok: [instance] => (item=sshd)\n\nTASK [vexxhost.ceph.cephadm : Download \"cephadm\"] ******************************\nMonday 08 June 2026  07:56:05 +0000 (0:00:00.646)       0:04:32.486 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Remove cephadm from old path] ********************\nMonday 08 June 2026  07:56:05 +0000 (0:00:00.272)       0:04:32.758 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Ensure \"cephadm\" user is present] ****************\nMonday 08 June 2026  07:56:05 +0000 (0:00:00.204)       0:04:32.963 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm : Allow \"cephadm\" user to have passwordless sudo] ***\nMonday 08 June 2026  07:56:05 +0000 (0:00:00.238)       0:04:33.202 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Get monitor status] **********************************\nMonday 08 June 2026  07:56:05 +0000 (0:00:00.200)       0:04:33.403 ***********\nok: [instance] => (item=instance)\n\nTASK [vexxhost.ceph.osd : Select admin host] ***********************************\nMonday 08 June 2026  07:56:06 +0000 (0:00:00.236)       0:04:33.639 ***********\nok: [instance]\n\nTASK [Install Ceph host] *******************************************************\nMonday 08 June 2026  07:56:06 +0000 (0:00:00.050)       0:04:33.690 ***********\nincluded: vexxhost.ceph.cephadm_host for instance\n\nTASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******\nMonday 08 June 2026  07:56:06 +0000 (0:00:00.058)       0:04:33.748 ***********\nskipping: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***\nMonday 08 June 2026  07:56:06 +0000 (0:00:00.050)       0:04:33.799 ***********\nskipping: [instance] => (item=instance)\nskipping: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********\nMonday 08 June 2026  07:56:06 +0000 (0:00:00.184)       0:04:33.983 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************\nMonday 08 June 2026  07:56:06 +0000 (0:00:00.250)       0:04:34.233 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Ensure all OSDs are non-legacy] **********************\nMonday 08 June 2026  07:56:13 +0000 (0:00:06.324)       0:04:40.558 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Get `ceph-volume lvm list` status] *******************\nMonday 08 June 2026  07:56:18 +0000 (0:00:05.335)       0:04:45.893 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Install OSDs] ****************************************\nMonday 08 June 2026  07:56:32 +0000 (0:00:13.925)       0:04:59.819 ***********\nok: [instance] => (item=/dev/ceph-instance-osd0/data)\nok: [instance] => (item=/dev/ceph-instance-osd1/data)\nok: [instance] => (item=/dev/ceph-instance-osd2/data)\n\nTASK [vexxhost.ceph.osd : Get mon dump] ****************************************\nMonday 08 June 2026  07:58:04 +0000 (0:01:32.332)       0:06:32.151 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Mark require osd release] ****************************\nMonday 08 June 2026  07:58:10 +0000 (0:00:05.828)       0:06:37.979 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Wait for all OSD to be running] **********************\nMonday 08 June 2026  07:58:16 +0000 (0:00:06.121)       0:06:44.101 ***********\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/osd/tasks/check-osds.yml for instance\n\nTASK [vexxhost.ceph.osd : Set the retry count] *********************************\nMonday 08 June 2026  07:58:16 +0000 (0:00:00.085)       0:06:44.187 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Get `ceph orch ps`] **********************************\nMonday 08 June 2026  07:58:16 +0000 (0:00:00.059)       0:06:44.246 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : OSD daemon list] *************************************\nMonday 08 June 2026  07:58:22 +0000 (0:00:06.127)       0:06:50.373 ***********\nok: [instance]\n\nTASK [vexxhost.ceph.osd : Fail if any OSD not running] *************************\nMonday 08 June 2026  07:58:23 +0000 (0:00:00.057)       0:06:50.430 ***********\nskipping: [instance] => (item=1)\nskipping: [instance] => (item=1)\nskipping: [instance] => (item=1)\nskipping: [instance]\n\nTASK [vexxhost.ceph.osd : Fail if any duplicate OSD ID] ************************\nMonday 08 June 2026  07:58:23 +0000 (0:00:00.048)       0:06:50.479 ***********\nskipping: [instance]\n\nPLAY [all] *********************************************************************\n\nTASK [Ensure RBD kernel module is loaded] **************************************\nMonday 08 June 2026  07:58:23 +0000 (0:00:00.062)       0:06:50.541 ***********\nchanged: [instance]\n\nPLAY [all] *********************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:58:23 +0000 (0:00:00.327)       0:06:50.869 ***********\nok: [instance]\n\nTASK [vexxhost.atmosphere.sysctl : Configure sysctl values] ********************\nMonday 08 June 2026  07:58:24 +0000 (0:00:01.001)       0:06:51.871 ***********\nchanged: [instance] => (item={'name': 'fs.aio-max-nr', 'value': 1048576})\nchanged: [instance] => (item={'name': 'net.ipv4.tcp_timestamps', 'value': 0})\nchanged: [instance] => (item={'name': 'net.ipv4.tcp_sack', 'value': 1})\nchanged: [instance] => (item={'name': 'net.core.netdev_budget', 'value': 1000})\nchanged: [instance] => (item={'name': 'net.core.netdev_max_backlog', 'value': 250000})\nchanged: [instance] => (item={'name': 'net.core.rmem_max', 'value': 4194304})\nchanged: [instance] => (item={'name': 'net.core.wmem_max', 'value': 4194304})\nchanged: [instance] => (item={'name': 'net.core.rmem_default', 'value': 4194304})\nchanged: [instance] => (item={'name': 'net.core.wmem_default', 'value': 4194304})\nchanged: [instance] => (item={'name': 'net.core.optmem_max', 'value': 4194304})\nchanged: [instance] => (item={'name': 'net.ipv4.tcp_rmem', 'value': '4096 87380 4194304'})\nchanged: [instance] => (item={'name': 'net.ipv4.tcp_wmem', 'value': '4096 65536 4194304'})\nchanged: [instance] => (item={'name': 'net.ipv4.tcp_low_latency', 'value': 1})\nchanged: [instance] => (item={'name': 'net.ipv4.tcp_adv_win_scale', 'value': 1})\nchanged: [instance] => (item={'name': 'net.ipv4.neigh.default.gc_thresh1', 'value': 128})\nchanged: [instance] => (item={'name': 'net.ipv4.neigh.default.gc_thresh2', 'value': 28872})\nchanged: [instance] => (item={'name': 'net.ipv4.neigh.default.gc_thresh3', 'value': 32768})\nchanged: [instance] => (item={'name': 'net.ipv6.neigh.default.gc_thresh1', 'value': 128})\nchanged: [instance] => (item={'name': 'net.ipv6.neigh.default.gc_thresh2', 'value': 28872})\nchanged: [instance] => (item={'name': 'net.ipv6.neigh.default.gc_thresh3', 'value': 32768})\n\nTASK [vexxhost.atmosphere.ethtool : Create folder for persistent configuration] ***\nMonday 08 June 2026  07:58:28 +0000 (0:00:04.006)       0:06:55.877 ***********\nchanged: [instance]\n\nTASK [vexxhost.atmosphere.ethtool : Install persistent \"ethtool\" tuning] *******\nMonday 08 June 2026  07:58:28 +0000 (0:00:00.205)       0:06:56.083 ***********\nchanged: [instance]\n\nTASK [vexxhost.atmosphere.ethtool : Run \"ethtool\" tuning] **********************\nMonday 08 June 2026  07:58:29 +0000 (0:00:00.471)       0:06:56.554 ***********\nok: [instance]\n\nTASK [Set a fact with the \"atmosphere_images\" for other plays] *****************\nMonday 08 June 2026  07:58:29 +0000 (0:00:00.265)       0:06:56.820 ***********\nok: [instance]\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:58:29 +0000 (0:00:00.050)       0:06:56.871 ***********\nok: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nMonday 08 June 2026  07:58:30 +0000 (0:00:00.974)       0:06:57.845 ***********\nchanged: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nMonday 08 June 2026  07:58:30 +0000 (0:00:00.218)       0:06:58.064 ***********\nok: [instance] => (item=/etc/keepalived/keepalived.conf)\nok: [instance] => (item=/etc/keepalived/check_apiserver.sh)\nok: [instance] => (item=/etc/kubernetes/manifests/keepalived.yaml)\nok: [instance] => (item=/etc/haproxy/haproxy.cfg)\nok: [instance] => (item=/etc/kubernetes/manifests/haproxy.yaml)\n\nTASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****\nMonday 08 June 2026  07:58:31 +0000 (0:00:00.976)       0:06:59.040 ***********\nfailed: [instance] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}\nfailed: [instance] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}\nfailed: [instance] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}\n...ignoring\n\nTASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********\nMonday 08 June 2026  07:58:32 +0000 (0:00:00.558)       0:06:59.599 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nMonday 08 June 2026  07:58:32 +0000 (0:00:00.198)       0:06:59.797 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nMonday 08 June 2026  07:58:32 +0000 (0:00:00.209)       0:07:00.007 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nMonday 08 June 2026  07:58:32 +0000 (0:00:00.039)       0:07:00.046 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nMonday 08 June 2026  07:58:32 +0000 (0:00:00.034)       0:07:00.081 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nMonday 08 June 2026  07:58:33 +0000 (0:00:00.561)       0:07:00.642 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nMonday 08 June 2026  07:58:33 +0000 (0:00:00.222)       0:07:00.864 ***********\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 08 June 2026  07:58:33 +0000 (0:00:00.062)       0:07:00.927 ***********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:58:34 +0000 (0:00:01.031)       0:07:01.958 ***********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:58:34 +0000 (0:00:00.220)       0:07:02.178 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 08 June 2026  07:58:34 +0000 (0:00:00.054)       0:07:02.233 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:58:35 +0000 (0:00:00.245)       0:07:02.478 ***********\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] *******************\nMonday 08 June 2026  07:58:35 +0000 (0:00:00.059)       0:07:02.537 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:58:35 +0000 (0:00:00.362)       0:07:02.900 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:58:35 +0000 (0:00:00.058)       0:07:02.958 ***********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 08 June 2026  07:58:35 +0000 (0:00:00.263)       0:07:03.222 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:58:37 +0000 (0:00:01.433)       0:07:04.656 ***********\nok: [instance] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:58:37 +0000 (0:00:00.071)       0:07:04.727 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:58:37 +0000 (0:00:00.365)       0:07:05.092 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 08 June 2026  07:58:39 +0000 (0:00:02.053)       0:07:07.146 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 08 June 2026  07:58:39 +0000 (0:00:00.044)       0:07:07.190 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 08 June 2026  07:58:39 +0000 (0:00:00.039)       0:07:07.231 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 08 June 2026  07:58:39 +0000 (0:00:00.039)       0:07:07.270 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 08 June 2026  07:58:41 +0000 (0:00:01.260)       0:07:08.531 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 08 June 2026  07:58:41 +0000 (0:00:00.549)       0:07:09.080 ***********\nok: [instance] => (item={'path': '/etc/containerd'})\nok: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nMonday 08 June 2026  07:58:42 +0000 (0:00:00.990)       0:07:10.071 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 08 June 2026  07:58:43 +0000 (0:00:00.518)       0:07:10.590 ***********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 08 June 2026  07:58:43 +0000 (0:00:00.009)       0:07:10.600 ***********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nMonday 08 June 2026  07:58:43 +0000 (0:00:00.383)       0:07:10.983 ***********\nfatal: [instance]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on instance's Python /usr/bin/python3.10. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.669)       0:07:11.653 ***********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.037)       0:07:11.691 ***********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.030)       0:07:11.721 ***********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.034)       0:07:11.755 ***********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.044)       0:07:11.800 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.053)       0:07:11.854 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.225)       0:07:12.079 ***********\nok: [instance] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:58:44 +0000 (0:00:00.042)       0:07:12.122 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:58:45 +0000 (0:00:01.047)       0:07:13.169 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:58:45 +0000 (0:00:00.052)       0:07:13.222 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:58:46 +0000 (0:00:00.217)       0:07:13.439 ***********\nok: [instance] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:58:46 +0000 (0:00:00.053)       0:07:13.492 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:58:47 +0000 (0:00:01.119)       0:07:14.612 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 08 June 2026  07:58:47 +0000 (0:00:00.060)       0:07:14.673 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 08 June 2026  07:58:47 +0000 (0:00:00.037)       0:07:14.710 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 08 June 2026  07:58:47 +0000 (0:00:00.036)       0:07:14.747 ***********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 08 June 2026  07:58:47 +0000 (0:00:00.039)       0:07:14.786 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 08 June 2026  07:58:48 +0000 (0:00:01.145)       0:07:15.932 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 08 June 2026  07:58:49 +0000 (0:00:00.492)       0:07:16.425 ***********\nok: [instance] => (item={'path': '/etc/containerd'})\nok: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nMonday 08 June 2026  07:58:49 +0000 (0:00:00.933)       0:07:17.358 ***********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 08 June 2026  07:58:50 +0000 (0:00:00.554)       0:07:17.913 ***********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 08 June 2026  07:58:50 +0000 (0:00:00.011)       0:07:17.924 ***********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 08 June 2026  07:58:50 +0000 (0:00:00.372)       0:07:18.297 ***********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:58:51 +0000 (0:00:00.214)       0:07:18.511 ***********\nok: [instance] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/crictl-v1.35.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:58:51 +0000 (0:00:00.062)       0:07:18.573 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 08 June 2026  07:59:00 +0000 (0:00:09.034)       0:07:27.608 ***********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 08 June 2026  07:59:01 +0000 (0:00:01.416)       0:07:29.024 ***********\nok: [instance] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/critest-v1.35.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 08 June 2026  07:59:01 +0000 (0:00:00.063)       0:07:29.088 ***********\nfatal: [instance]: FAILED! => {\"attempts\": 4, \"censored\": \"the output has been hidden due to the fact that 'no_log: true' was specified for this result\", \"changed\": false}\nFAILED - RETRYING: [instance]: Download item (4 retries left).\nFAILED - RETRYING: [instance]: Download item (3 retries left).\nFAILED - RETRYING: [instance]: Download item (2 retries left).\nFAILED - RETRYING: [instance]: Download item (1 retries left).\n\nPLAY RECAP *********************************************************************\ninstance                   : ok=157  changed=38   unreachable=0    failed=1    skipped=34   rescued=0    ignored=2\n\nMonday 08 June 2026  07:59:26 +0000 (0:00:24.638)       0:07:53.726 ***********\n===============================================================================\nvexxhost.ceph.mon : Run Bootstrap command ------------------------------ 95.90s\nvexxhost.ceph.osd : Install OSDs --------------------------------------- 92.33s\nvexxhost.ceph.mon : Configure \"mon\" label for monitors ----------------- 54.10s\nvexxhost.containers.download_artifact : Download item ------------------ 24.64s\nvexxhost.ceph.mon : Validate monitor exist ----------------------------- 14.06s\nvexxhost.ceph.osd : Get `ceph-volume lvm list` status ------------------ 13.93s\nvexxhost.ceph.mgr : Configure \"mgr\" label for managers ----------------- 12.11s\nvexxhost.containers.download_artifact : Download item ------------------- 9.03s\nvexxhost.ceph.mgr : Configure manager modules --------------------------- 7.90s\nvexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 6.37s\nvexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 6.36s\nvexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 6.32s\nvexxhost.ceph.osd : Get `ceph orch ps` ---------------------------------- 6.13s\nvexxhost.ceph.osd : Mark require osd release ---------------------------- 6.12s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 6.04s\nvexxhost.ceph.mgr : Validate manager exist ------------------------------ 5.98s\nvexxhost.ceph.osd : Get mon dump ---------------------------------------- 5.83s\nvexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user ------ 5.63s\nvexxhost.ceph.osd : Ensure all OSDs are non-legacy ---------------------- 5.34s\nvexxhost.ceph.cephadm : Install packages -------------------------------- 5.17s\nCRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.aio/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/aio/converge.yml\nERROR    [aio > converge] \u001b[31mExecuted: Failed\u001b[0m\nERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.aio/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/aio/converge.yml",
                            "stdout_lines": [
                                "WARNING  Molecule scenarios should migrate to 'extensions/molecule'",
                                "INFO     [aio > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [aio > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [aio > dependency] Executing",
                                "WARNING  [aio > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [aio > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [aio > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [aio > cleanup] Executing",
                                "WARNING  [aio > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [aio > destroy] Executing",
                                "WARNING  [aio > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [aio > destroy] Executed: Successful",
                                "INFO     [aio > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/atmosphere/molecule/aio/converge.yml",
                                "INFO     [aio > syntax] Executed: Successful",
                                "INFO     [aio > create] Executing",
                                "WARNING  [aio > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [aio > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:50:36 +0000 (0:00:00.026)       0:00:00.026 ***********",
                                "[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] ************************************************",
                                "Monday 08 June 2026  07:50:37 +0000 (0:00:01.243)       0:00:01.270 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [Ensure hostname inside hosts file] ***************************************",
                                "Monday 08 June 2026  07:50:38 +0000 (0:00:00.662)       0:00:01.933 ***********",
                                "[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 [Install \"dirmngr\" for GPG keyserver operations] **************************",
                                "Monday 08 June 2026  07:50:38 +0000 (0:00:00.266)       0:00:02.199 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Purge \"snapd\" package] ***************************************************",
                                "Monday 08 June 2026  07:50:39 +0000 (0:00:01.284)       0:00:03.484 ***********",
                                "ok: [instance]",
                                "",
                                "PLAY [Generate workspace for Atmosphere] ***************************************",
                                "",
                                "TASK [Create folders for workspace] ********************************************",
                                "Monday 08 June 2026  07:50:40 +0000 (0:00:00.789)       0:00:04.274 ***********",
                                "changed: [localhost] => (item=group_vars)",
                                "changed: [localhost] => (item=group_vars/all)",
                                "changed: [localhost] => (item=group_vars/controllers)",
                                "changed: [localhost] => (item=group_vars/cephs)",
                                "changed: [localhost] => (item=group_vars/computes)",
                                "changed: [localhost] => (item=host_vars)",
                                "",
                                "PLAY [Generate Ceph control plane configuration for workspace] *****************",
                                "",
                                "TASK [Ensure the Ceph control plane configuration file exists] *****************",
                                "Monday 08 June 2026  07:50:41 +0000 (0:00:00.979)       0:00:05.253 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Ceph control plane configuration into a variable] *******",
                                "Monday 08 June 2026  07:50:41 +0000 (0:00:00.171)       0:00:05.424 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Ceph control plane values for missing variables] ****************",
                                "Monday 08 June 2026  07:50:41 +0000 (0:00:00.019)       0:00:05.444 ***********",
                                "ok: [localhost] => (item={'key': 'ceph_fsid', 'value': '6a32e623-d066-5fb9-a347-ee643209da6e'})",
                                "ok: [localhost] => (item={'key': 'ceph_mon_public_network', 'value': '10.96.240.0/24'})",
                                "",
                                "TASK [Write new Ceph control plane configuration file to disk] *****************",
                                "Monday 08 June 2026  07:50:41 +0000 (0:00:00.055)       0:00:05.499 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Ceph OSD configuration for workspace] ***************************",
                                "",
                                "TASK [Ensure the Ceph OSDs configuration file exists] **************************",
                                "Monday 08 June 2026  07:50:42 +0000 (0:00:00.593)       0:00:06.093 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Ceph OSDs configuration into a variable] ****************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.906)       0:00:06.999 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Ceph OSDs values for missing variables] *************************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.026)       0:00:07.026 ***********",
                                "ok: [localhost] => (item={'key': 'ceph_osd_devices', 'value': ['/dev/vdb', '/dev/vdc', '/dev/vdd']})",
                                "",
                                "TASK [Write new Ceph OSDs configuration file to disk] **************************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.033)       0:00:07.060 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Kubernetes configuration for workspace] *************************",
                                "",
                                "TASK [Ensure the Kubernetes configuration file exists] *************************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.350)       0:00:07.411 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Kubernetes configuration into a variable] ***************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.172)       0:00:07.584 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Kubernetes values for missing variables] ************************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.024)       0:00:07.609 ***********",
                                "ok: [localhost] => (item={'key': 'kubernetes_hostname', 'value': '10.96.240.10'})",
                                "ok: [localhost] => (item={'key': 'kubernetes_keepalived_vrid', 'value': 42})",
                                "ok: [localhost] => (item={'key': 'kubernetes_keepalived_vip', 'value': '10.96.240.10'})",
                                "",
                                "TASK [Write new Kubernetes configuration file to disk] *************************",
                                "Monday 08 June 2026  07:50:43 +0000 (0:00:00.042)       0:00:07.651 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Keepalived configuration for workspace] *************************",
                                "",
                                "TASK [Ensure the Keeaplived configuration file exists] *************************",
                                "Monday 08 June 2026  07:50:44 +0000 (0:00:00.345)       0:00:07.996 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Keepalived configuration into a variable] ***************",
                                "Monday 08 June 2026  07:50:44 +0000 (0:00:00.167)       0:00:08.164 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Keepalived values for missing variables] ************************",
                                "Monday 08 June 2026  07:50:44 +0000 (0:00:00.030)       0:00:08.194 ***********",
                                "ok: [localhost] => (item={'key': 'keepalived_interface', 'value': 'br-ex'})",
                                "ok: [localhost] => (item={'key': 'keepalived_vip', 'value': '10.96.250.10'})",
                                "",
                                "TASK [Write new Keepalived configuration file to disk] *************************",
                                "Monday 08 June 2026  07:50:44 +0000 (0:00:00.040)       0:00:08.235 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate endpoints for workspace] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:50:44 +0000 (0:00:00.378)       0:00:08.614 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Ensure the endpoints file exists] ****************************************",
                                "Monday 08 June 2026  07:50:45 +0000 (0:00:00.680)       0:00:09.294 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current endpoints into a variable] ******************************",
                                "Monday 08 June 2026  07:50:45 +0000 (0:00:00.171)       0:00:09.466 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate endpoint skeleton for missing variables] ************************",
                                "Monday 08 June 2026  07:50:45 +0000 (0:00:00.029)       0:00:09.495 ***********",
                                "ok: [localhost] => (item=keycloak_host)",
                                "ok: [localhost] => (item=kube_prometheus_stack_grafana_host)",
                                "ok: [localhost] => (item=kube_prometheus_stack_alertmanager_host)",
                                "ok: [localhost] => (item=kube_prometheus_stack_prometheus_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_region_name)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_keystone_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_glance_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_cinder_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_placement_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_barbican_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_neutron_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_nova_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_nova_novnc_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_ironic_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_designate_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_octavia_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_magnum_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_magnum_registry_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_cfn_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_horizon_api_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_rgw_host)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_manila_api_host)",
                                "",
                                "TASK [Write new endpoints file to disk] ****************************************",
                                "Monday 08 June 2026  07:50:46 +0000 (0:00:00.742)       0:00:10.237 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Ensure the endpoints file exists] ****************************************",
                                "Monday 08 June 2026  07:50:46 +0000 (0:00:00.333)       0:00:10.571 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Neutron configuration for workspace] ****************************",
                                "",
                                "TASK [Ensure the Neutron configuration file exists] ****************************",
                                "Monday 08 June 2026  07:50:46 +0000 (0:00:00.171)       0:00:10.743 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Neutron configuration into a variable] ******************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.175)       0:00:10.918 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Neutron values for missing variables] ***************************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.033)       0:00:10.951 ***********",
                                "ok: [localhost] => (item={'key': 'neutron_networks', 'value': [{'name': 'public', 'external': True, 'shared': True, 'mtu_size': 1500, 'port_security_enabled': True, 'provider_network_type': 'flat', 'provider_physical_network': 'external', 'subnets': [{'name': 'public-subnet', 'cidr': '10.96.250.0/24', 'gateway_ip': '10.96.250.10', 'allocation_pool_start': '10.96.250.200', 'allocation_pool_end': '10.96.250.220', 'enable_dhcp': True}]}]})",
                                "",
                                "TASK [Write new Neutron configuration file to disk] ****************************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.045)       0:00:10.997 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Nova configuration for workspace] *******************************",
                                "",
                                "TASK [Ensure the Nova configuration file exists] *******************************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.365)       0:00:11.362 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Nova configuration into a variable] *********************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.174)       0:00:11.536 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Nova values for missing variables] ******************************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.030)       0:00:11.566 ***********",
                                "ok: [localhost] => (item={'key': 'nova_flavors', 'value': [{'name': 'm1.tiny', 'ram': 512, 'disk': 1, 'vcpus': 1}, {'name': 'm1.small', 'ram': 2048, 'disk': 20, 'vcpus': 1}, {'name': 'm1.medium', 'ram': 4096, 'disk': 40, 'vcpus': 2}, {'name': 'm1.large', 'ram': 8192, 'disk': 80, 'vcpus': 4}, {'name': 'm1.xlarge', 'ram': 16384, 'disk': 160, 'vcpus': 8}]})",
                                "",
                                "TASK [Write new Nova configuration file to disk] *******************************",
                                "Monday 08 June 2026  07:50:47 +0000 (0:00:00.043)       0:00:11.609 ***********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate secrets for workspace] ******************************************",
                                "",
                                "TASK [Ensure the secrets file exists] ******************************************",
                                "Monday 08 June 2026  07:50:48 +0000 (0:00:00.358)       0:00:11.967 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current secrets into a variable] ********************************",
                                "Monday 08 June 2026  07:50:48 +0000 (0:00:00.192)       0:00:12.160 ***********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate secrets for missing variables] **********************************",
                                "Monday 08 June 2026  07:50:48 +0000 (0:00:00.035)       0:00:12.196 ***********",
                                "ok: [localhost] => (item=heat_auth_encryption_key)",
                                "ok: [localhost] => (item=keepalived_password)",
                                "ok: [localhost] => (item=keycloak_admin_password)",
                                "ok: [localhost] => (item=keycloak_database_password)",
                                "ok: [localhost] => (item=keystone_keycloak_client_secret)",
                                "ok: [localhost] => (item=keystone_oidc_crypto_passphrase)",
                                "ok: [localhost] => (item=kube_prometheus_stack_grafana_admin_password)",
                                "ok: [localhost] => (item=octavia_heartbeat_key)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_rabbitmq_admin_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_memcached_secret_key)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_keystone_admin_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_keystone_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_keystone_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_glance_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_glance_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_glance_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_cinder_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_cinder_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_cinder_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_placement_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_placement_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_barbican_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_barbican_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_neutron_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_neutron_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_neutron_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_neutron_metadata_secret)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_nova_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_nova_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_nova_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_ironic_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_ironic_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_ironic_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_designate_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_designate_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_designate_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_octavia_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_octavia_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_octavia_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_magnum_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_magnum_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_magnum_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_trustee_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_stack_user_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_heat_rabbitmq_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_horizon_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_tempest_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_openstack_exporter_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_rgw_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_manila_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_manila_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_staffeln_mariadb_password)",
                                "",
                                "TASK [Generate base64 encoded secrets] *****************************************",
                                "Monday 08 June 2026  07:50:48 +0000 (0:00:00.415)       0:00:12.611 ***********",
                                "ok: [localhost] => (item=barbican_kek)",
                                "",
                                "TASK [Generate temporary files for generating keys for missing variables] ******",
                                "Monday 08 June 2026  07:50:48 +0000 (0:00:00.060)       0:00:12.672 ***********",
                                "changed: [localhost] => (item=manila_ssh_key)",
                                "changed: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Generate SSH keys for missing variables] *********************************",
                                "Monday 08 June 2026  07:50:49 +0000 (0:00:00.478)       0:00:13.150 ***********",
                                "changed: [localhost] => (item=manila_ssh_key)",
                                "changed: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Set values for SSH keys] *************************************************",
                                "Monday 08 June 2026  07:50:53 +0000 (0:00:04.093)       0:00:17.244 ***********",
                                "ok: [localhost] => (item=manila_ssh_key)",
                                "ok: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Delete the temporary files generated for SSH keys] ***********************",
                                "Monday 08 June 2026  07:50:53 +0000 (0:00:00.070)       0:00:17.314 ***********",
                                "changed: [localhost] => (item=manila_ssh_key)",
                                "changed: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Write new secrets file to disk] ******************************************",
                                "Monday 08 June 2026  07:50:53 +0000 (0:00:00.345)       0:00:17.660 ***********",
                                "changed: [localhost]",
                                "",
                                "TASK [Encrypt secrets file with Vault password] ********************************",
                                "Monday 08 June 2026  07:50:54 +0000 (0:00:00.362)       0:00:18.023 ***********",
                                "skipping: [localhost]",
                                "",
                                "PLAY [Setup networking] ********************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:50:54 +0000 (0:00:00.030)       0:00:18.054 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Create bridge for management network] ************************************",
                                "Monday 08 June 2026  07:50:54 +0000 (0:00:00.687)       0:00:18.741 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Create fake interface for management bridge] *****************************",
                                "Monday 08 June 2026  07:50:55 +0000 (0:00:00.313)       0:00:19.054 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Assign dummy interface to management bridge] *****************************",
                                "Monday 08 June 2026  07:50:55 +0000 (0:00:00.206)       0:00:19.261 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Assign IP address for management bridge] *********************************",
                                "Monday 08 June 2026  07:50:55 +0000 (0:00:00.184)       0:00:19.446 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Bring up interfaces] *****************************************************",
                                "Monday 08 June 2026  07:50:55 +0000 (0:00:00.198)       0:00:19.644 ***********",
                                "ok: [instance] => (item=br-mgmt)",
                                "ok: [instance] => (item=dummy0)",
                                "",
                                "PLAY [Create devices for Ceph] *************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:50:56 +0000 (0:00:00.396)       0:00:20.040 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Install depedencies] *****************************************************",
                                "Monday 08 June 2026  07:50:56 +0000 (0:00:00.749)       0:00:20.790 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [Start up service] ********************************************************",
                                "Monday 08 June 2026  07:51:18 +0000 (0:00:22.011)       0:00:42.801 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Generate lvm.conf] *******************************************************",
                                "Monday 08 June 2026  07:51:19 +0000 (0:00:00.542)       0:00:43.344 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Write /etc/lvm/lvm.conf] *************************************************",
                                "Monday 08 June 2026  07:51:19 +0000 (0:00:00.218)       0:00:43.563 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [Get list of all loopback devices] ****************************************",
                                "Monday 08 June 2026  07:51:20 +0000 (0:00:00.463)       0:00:44.026 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Fail if there is any existing loopback devices] **************************",
                                "Monday 08 June 2026  07:51:20 +0000 (0:00:00.199)       0:00:44.225 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [Create devices for Ceph] *************************************************",
                                "Monday 08 June 2026  07:51:20 +0000 (0:00:00.027)       0:00:44.253 ***********",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Set permissions on loopback devices] *************************************",
                                "Monday 08 June 2026  07:51:21 +0000 (0:00:01.562)       0:00:45.816 ***********",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Start loop devices] ******************************************************",
                                "Monday 08 June 2026  07:51:22 +0000 (0:00:00.534)       0:00:46.350 ***********",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Create a volume group for each loop device] ******************************",
                                "Monday 08 June 2026  07:51:23 +0000 (0:00:00.712)       0:00:47.062 ***********",
                                "changed: [instance] => (item=osd0)",
                                "changed: [instance] => (item=osd1)",
                                "changed: [instance] => (item=osd2)",
                                "",
                                "TASK [Create a logical volume for each loop device] ****************************",
                                "Monday 08 June 2026  07:51:26 +0000 (0:00:03.082)       0:00:50.144 ***********",
                                "changed: [instance] => (item=ceph-instance-osd0)",
                                "changed: [instance] => (item=ceph-instance-osd1)",
                                "changed: [instance] => (item=ceph-instance-osd2)",
                                "",
                                "PLAY [controllers] *************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:51:28 +0000 (0:00:01.838)       0:00:51.983 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Set masquerade rule] *****************************************************",
                                "Monday 08 June 2026  07:51:29 +0000 (0:00:00.963)       0:00:52.947 ***********",
                                "changed: [instance]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "instance                   : ok=24   changed=10   unreachable=0    failed=0    skipped=1    rescued=0    ignored=0",
                                "localhost                  : ok=40   changed=21   unreachable=0    failed=0    skipped=1    rescued=0    ignored=0",
                                "",
                                "Monday 08 June 2026  07:51:29 +0000 (0:00:00.479)       0:00:53.427 ***********",
                                "===============================================================================",
                                "Install depedencies ---------------------------------------------------- 22.01s",
                                "Generate SSH keys for missing variables --------------------------------- 4.09s",
                                "Create a volume group for each loop device ------------------------------ 3.08s",
                                "Create a logical volume for each loop device ---------------------------- 1.84s",
                                "Create devices for Ceph ------------------------------------------------- 1.56s",
                                "Install \"dirmngr\" for GPG keyserver operations -------------------------- 1.28s",
                                "Gathering Facts --------------------------------------------------------- 1.24s",
                                "Create folders for workspace -------------------------------------------- 0.98s",
                                "Gathering Facts --------------------------------------------------------- 0.96s",
                                "Ensure the Ceph OSDs configuration file exists -------------------------- 0.91s",
                                "Purge \"snapd\" package --------------------------------------------------- 0.79s",
                                "Gathering Facts --------------------------------------------------------- 0.75s",
                                "Generate endpoint skeleton for missing variables ------------------------ 0.74s",
                                "Start loop devices ------------------------------------------------------ 0.71s",
                                "Gathering Facts --------------------------------------------------------- 0.69s",
                                "Gathering Facts --------------------------------------------------------- 0.68s",
                                "Configure short hostname ------------------------------------------------ 0.66s",
                                "Write new Ceph control plane configuration file to disk ----------------- 0.59s",
                                "Start up service -------------------------------------------------------- 0.54s",
                                "Set permissions on loopback devices ------------------------------------- 0.53s",
                                "INFO     [aio > prepare] Executed: Successful",
                                "INFO     [aio > converge] Executing",
                                "",
                                "PLAY [all] *********************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:51:32 +0000 (0:00:00.017)       0:00:00.017 ***********",
                                "[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 [Fail if atmosphere_ceph_enabled is set] **********************************",
                                "Monday 08 June 2026  07:51:33 +0000 (0:00:01.210)       0:00:01.227 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [Set a fact with the \"atmosphere_images\" for other plays] *****************",
                                "Monday 08 June 2026  07:51:33 +0000 (0:00:00.041)       0:00:01.268 ***********",
                                "ok: [instance]",
                                "",
                                "PLAY [Deploy Ceph monitors & managers] *****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:51:34 +0000 (0:00:00.183)       0:00:01.452 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:51:34 +0000 (0:00:00.878)       0:00:02.330 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:51:35 +0000 (0:00:00.284)       0:00:02.614 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 08 June 2026  07:51:35 +0000 (0:00:00.054)       0:00:02.668 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:51:35 +0000 (0:00:00.427)       0:00:03.096 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:51:35 +0000 (0:00:00.078)       0:00:03.174 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:51:36 +0000 (0:00:00.724)       0:00:03.898 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:51:36 +0000 (0:00:00.053)       0:00:03.952 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:51:36 +0000 (0:00:00.048)       0:00:04.001 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:51:36 +0000 (0:00:00.218)       0:00:04.220 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:51:38 +0000 (0:00:01.420)       0:00:05.641 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:51:38 +0000 (0:00:00.081)       0:00:05.722 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:51:43 +0000 (0:00:04.913)       0:00:10.636 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 08 June 2026  07:51:46 +0000 (0:00:02.969)       0:00:13.605 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 08 June 2026  07:51:46 +0000 (0:00:00.039)       0:00:13.645 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 08 June 2026  07:51:46 +0000 (0:00:00.032)       0:00:13.678 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 08 June 2026  07:51:46 +0000 (0:00:00.037)       0:00:13.716 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 08 June 2026  07:51:52 +0000 (0:00:06.044)       0:00:19.761 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 08 June 2026  07:51:52 +0000 (0:00:00.657)       0:00:20.418 ***********",
                                "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] **********",
                                "Monday 08 June 2026  07:51:53 +0000 (0:00:00.942)       0:00:21.360 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 08 June 2026  07:51:54 +0000 (0:00:00.622)       0:00:21.982 ***********",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************",
                                "Monday 08 June 2026  07:51:54 +0000 (0:00:00.008)       0:00:21.991 ***********",
                                "ok: [instance]",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Monday 08 June 2026  07:51:55 +0000 (0:00:00.989)       0:00:22.981 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 08 June 2026  07:51:56 +0000 (0:00:00.464)       0:00:23.445 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:51:56 +0000 (0:00:00.544)       0:00:23.989 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:51:56 +0000 (0:00:00.219)       0:00:24.209 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://download.docker.com/linux/static/stable/x86_64/docker-24.0.9.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:51:56 +0000 (0:00:00.064)       0:00:24.273 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:51:57 +0000 (0:00:00.956)       0:00:25.229 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Install AppArmor packages] ******************",
                                "Monday 08 June 2026  07:52:02 +0000 (0:00:04.489)       0:00:29.718 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Ensure group \"docker\" exists] ***************",
                                "Monday 08 June 2026  07:52:03 +0000 (0:00:01.047)       0:00:30.766 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create systemd service file for docker] *****",
                                "Monday 08 June 2026  07:52:03 +0000 (0:00:00.390)       0:00:31.157 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create folders for configuration] ***********",
                                "Monday 08 June 2026  07:52:04 +0000 (0:00:00.479)       0:00:31.637 ***********",
                                "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] ******",
                                "Monday 08 June 2026  07:52:04 +0000 (0:00:00.570)       0:00:32.208 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create docker daemon config file] ***********",
                                "Monday 08 June 2026  07:52:05 +0000 (0:00:00.477)       0:00:32.685 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Force any restarts if necessary] ************",
                                "Monday 08 June 2026  07:52:05 +0000 (0:00:00.467)       0:00:33.152 ***********",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Reload systemd] **************",
                                "Monday 08 June 2026  07:52:05 +0000 (0:00:00.008)       0:00:33.160 ***********",
                                "ok: [instance]",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.docker : Restart docker] ******************",
                                "Monday 08 June 2026  07:52:06 +0000 (0:00:00.675)       0:00:33.835 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Enable and start service] *******************",
                                "Monday 08 June 2026  07:52:07 +0000 (0:00:01.259)       0:00:35.095 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Gather variables for each operating system] ******",
                                "Monday 08 June 2026  07:52:08 +0000 (0:00:00.552)       0:00:35.647 ***********",
                                "ok: [instance] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/cephadm/vars/ubuntu-22.04.yml)",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Install packages] ********************************",
                                "Monday 08 June 2026  07:52:08 +0000 (0:00:00.064)       0:00:35.711 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Ensure services are started] *********************",
                                "Monday 08 June 2026  07:52:13 +0000 (0:00:05.168)       0:00:40.880 ***********",
                                "ok: [instance] => (item=chronyd)",
                                "ok: [instance] => (item=sshd)",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Download \"cephadm\"] ******************************",
                                "Monday 08 June 2026  07:52:14 +0000 (0:00:00.670)       0:00:41.550 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Remove cephadm from old path] ********************",
                                "Monday 08 June 2026  07:52:14 +0000 (0:00:00.295)       0:00:41.846 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Ensure \"cephadm\" user is present] ****************",
                                "Monday 08 June 2026  07:52:14 +0000 (0:00:00.234)       0:00:42.081 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Allow \"cephadm\" user to have passwordless sudo] ***",
                                "Monday 08 June 2026  07:52:15 +0000 (0:00:00.467)       0:00:42.548 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Set Ceph Monitor IP address] *************************",
                                "Monday 08 June 2026  07:52:15 +0000 (0:00:00.371)       0:00:42.920 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Check if any node is bootstrapped] *******************",
                                "Monday 08 June 2026  07:52:15 +0000 (0:00:00.128)       0:00:43.048 ***********",
                                "ok: [instance] => (item=instance)",
                                "",
                                "TASK [vexxhost.ceph.mon : Select pre-existing bootstrap node if exists] ********",
                                "Monday 08 June 2026  07:52:15 +0000 (0:00:00.233)       0:00:43.282 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Bootstrap cluster] ***********************************",
                                "Monday 08 June 2026  07:52:15 +0000 (0:00:00.060)       0:00:43.342 ***********",
                                "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\"] *************",
                                "Monday 08 June 2026  07:52:15 +0000 (0:00:00.076)       0:00:43.419 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Include extra configuration values] ******************",
                                "Monday 08 June 2026  07:52:16 +0000 (0:00:00.337)       0:00:43.756 ***********",
                                "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] *******************************",
                                "Monday 08 June 2026  07:52:17 +0000 (0:00:00.726)       0:00:44.483 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Remove temporary file for \"ceph.conf\"] ***************",
                                "Monday 08 June 2026  07:53:52 +0000 (0:01:35.899)       0:02:20.383 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Set bootstrap node] **********************************",
                                "Monday 08 June 2026  07:53:53 +0000 (0:00:00.213)       0:02:20.597 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Install Ceph host] *******************************************************",
                                "Monday 08 June 2026  07:53:53 +0000 (0:00:00.044)       0:02:20.642 ***********",
                                "included: vexxhost.ceph.cephadm_host for instance",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******",
                                "Monday 08 June 2026  07:53:53 +0000 (0:00:00.089)       0:02:20.731 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***",
                                "Monday 08 June 2026  07:53:58 +0000 (0:00:05.633)       0:02:26.364 ***********",
                                "ok: [instance] => (item=instance)",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********",
                                "Monday 08 June 2026  07:53:58 +0000 (0:00:00.054)       0:02:26.418 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************",
                                "Monday 08 June 2026  07:53:59 +0000 (0:00:00.412)       0:02:26.831 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Configure \"mon\" label for monitors] ******************",
                                "Monday 08 June 2026  07:54:05 +0000 (0:00:06.365)       0:02:33.196 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mon : Validate monitor exist] ******************************",
                                "Monday 08 June 2026  07:54:59 +0000 (0:00:54.100)       0:03:27.297 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Install Ceph host] *******************************************************",
                                "Monday 08 June 2026  07:55:13 +0000 (0:00:14.056)       0:03:41.353 ***********",
                                "included: vexxhost.ceph.cephadm_host for instance",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******",
                                "Monday 08 June 2026  07:55:14 +0000 (0:00:00.079)       0:03:41.433 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***",
                                "Monday 08 June 2026  07:55:14 +0000 (0:00:00.063)       0:03:41.496 ***********",
                                "skipping: [instance] => (item=instance)",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********",
                                "Monday 08 June 2026  07:55:14 +0000 (0:00:00.054)       0:03:41.551 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************",
                                "Monday 08 June 2026  07:55:14 +0000 (0:00:00.249)       0:03:41.800 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mgr : Configure \"mgr\" label for managers] ******************",
                                "Monday 08 June 2026  07:55:20 +0000 (0:00:06.355)       0:03:48.155 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mgr : Validate manager exist] ******************************",
                                "Monday 08 June 2026  07:55:32 +0000 (0:00:12.108)       0:04:00.264 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.mgr : Configure manager modules] ***************************",
                                "Monday 08 June 2026  07:55:38 +0000 (0:00:05.977)       0:04:06.242 ***********",
                                "changed: [instance] => (item={'name': 'diskprediction_local'})",
                                "ok: [instance] => (item={'name': 'dashboard'})",
                                "changed: [instance] => (item={'name': 'prometheus'})",
                                "ok: [instance] => (item={'name': 'iostat'})",
                                "",
                                "PLAY [Deploy Ceph OSDs] ********************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:55:46 +0000 (0:00:07.902)       0:04:14.144 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:55:47 +0000 (0:00:00.884)       0:04:15.029 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:55:47 +0000 (0:00:00.209)       0:04:15.239 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 08 June 2026  07:55:47 +0000 (0:00:00.038)       0:04:15.277 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:55:48 +0000 (0:00:00.209)       0:04:15.486 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:55:48 +0000 (0:00:00.055)       0:04:15.542 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:55:48 +0000 (0:00:00.283)       0:04:15.825 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:55:48 +0000 (0:00:00.045)       0:04:15.870 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:55:48 +0000 (0:00:00.048)       0:04:15.919 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:55:48 +0000 (0:00:00.212)       0:04:16.131 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:55:49 +0000 (0:00:01.236)       0:04:17.368 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:55:50 +0000 (0:00:00.064)       0:04:17.433 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:55:50 +0000 (0:00:00.345)       0:04:17.778 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 08 June 2026  07:55:52 +0000 (0:00:01.902)       0:04:19.681 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 08 June 2026  07:55:52 +0000 (0:00:00.027)       0:04:19.709 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 08 June 2026  07:55:52 +0000 (0:00:00.034)       0:04:19.743 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 08 June 2026  07:55:52 +0000 (0:00:00.035)       0:04:19.778 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 08 June 2026  07:55:53 +0000 (0:00:01.256)       0:04:21.035 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 08 June 2026  07:55:54 +0000 (0:00:00.435)       0:04:21.471 ***********",
                                "ok: [instance] => (item={'path': '/etc/containerd'})",
                                "ok: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Monday 08 June 2026  07:55:54 +0000 (0:00:00.894)       0:04:22.366 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 08 June 2026  07:55:55 +0000 (0:00:00.531)       0:04:22.897 ***********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 08 June 2026  07:55:55 +0000 (0:00:00.008)       0:04:22.905 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:55:55 +0000 (0:00:00.337)       0:04:23.243 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:55:56 +0000 (0:00:00.210)       0:04:23.454 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://download.docker.com/linux/static/stable/x86_64/docker-24.0.9.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:55:56 +0000 (0:00:00.053)       0:04:23.507 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:55:56 +0000 (0:00:00.331)       0:04:23.839 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Install AppArmor packages] ******************",
                                "Monday 08 June 2026  07:55:59 +0000 (0:00:03.049)       0:04:26.888 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Ensure group \"docker\" exists] ***************",
                                "Monday 08 June 2026  07:56:00 +0000 (0:00:01.329)       0:04:28.217 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create systemd service file for docker] *****",
                                "Monday 08 June 2026  07:56:00 +0000 (0:00:00.197)       0:04:28.415 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create folders for configuration] ***********",
                                "Monday 08 June 2026  07:56:01 +0000 (0:00:00.416)       0:04:28.831 ***********",
                                "ok: [instance] => (item={'path': '/etc/docker'})",
                                "ok: [instance] => (item={'path': '/var/lib/docker', 'mode': '0o710'})",
                                "ok: [instance] => (item={'path': '/run/docker', 'mode': '0o711'})",
                                "",
                                "TASK [vexxhost.containers.docker : Create systemd socket file for docker] ******",
                                "Monday 08 June 2026  07:56:01 +0000 (0:00:00.554)       0:04:29.386 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Create docker daemon config file] ***********",
                                "Monday 08 June 2026  07:56:02 +0000 (0:00:00.420)       0:04:29.806 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.docker : Force any restarts if necessary] ************",
                                "Monday 08 June 2026  07:56:02 +0000 (0:00:00.417)       0:04:30.223 ***********",
                                "",
                                "TASK [vexxhost.containers.docker : Enable and start service] *******************",
                                "Monday 08 June 2026  07:56:02 +0000 (0:00:00.007)       0:04:30.231 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Gather variables for each operating system] ******",
                                "Monday 08 June 2026  07:56:03 +0000 (0:00:00.342)       0:04:30.573 ***********",
                                "ok: [instance] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/cephadm/vars/ubuntu-22.04.yml)",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Install packages] ********************************",
                                "Monday 08 June 2026  07:56:03 +0000 (0:00:00.057)       0:04:30.631 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Ensure services are started] *********************",
                                "Monday 08 June 2026  07:56:04 +0000 (0:00:01.207)       0:04:31.839 ***********",
                                "ok: [instance] => (item=chronyd)",
                                "ok: [instance] => (item=sshd)",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Download \"cephadm\"] ******************************",
                                "Monday 08 June 2026  07:56:05 +0000 (0:00:00.646)       0:04:32.486 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Remove cephadm from old path] ********************",
                                "Monday 08 June 2026  07:56:05 +0000 (0:00:00.272)       0:04:32.758 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Ensure \"cephadm\" user is present] ****************",
                                "Monday 08 June 2026  07:56:05 +0000 (0:00:00.204)       0:04:32.963 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm : Allow \"cephadm\" user to have passwordless sudo] ***",
                                "Monday 08 June 2026  07:56:05 +0000 (0:00:00.238)       0:04:33.202 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Get monitor status] **********************************",
                                "Monday 08 June 2026  07:56:05 +0000 (0:00:00.200)       0:04:33.403 ***********",
                                "ok: [instance] => (item=instance)",
                                "",
                                "TASK [vexxhost.ceph.osd : Select admin host] ***********************************",
                                "Monday 08 June 2026  07:56:06 +0000 (0:00:00.236)       0:04:33.639 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Install Ceph host] *******************************************************",
                                "Monday 08 June 2026  07:56:06 +0000 (0:00:00.050)       0:04:33.690 ***********",
                                "included: vexxhost.ceph.cephadm_host for instance",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user] ******",
                                "Monday 08 June 2026  07:56:06 +0000 (0:00:00.058)       0:04:33.748 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set fact with public SSH key for \"cephadm\" user] ***",
                                "Monday 08 June 2026  07:56:06 +0000 (0:00:00.050)       0:04:33.799 ***********",
                                "skipping: [instance] => (item=instance)",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Set authorized key for \"cephadm\"] ***********",
                                "Monday 08 June 2026  07:56:06 +0000 (0:00:00.184)       0:04:33.983 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.cephadm_host : Add new host to Ceph] ***********************",
                                "Monday 08 June 2026  07:56:06 +0000 (0:00:00.250)       0:04:34.233 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Ensure all OSDs are non-legacy] **********************",
                                "Monday 08 June 2026  07:56:13 +0000 (0:00:06.324)       0:04:40.558 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Get `ceph-volume lvm list` status] *******************",
                                "Monday 08 June 2026  07:56:18 +0000 (0:00:05.335)       0:04:45.893 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Install OSDs] ****************************************",
                                "Monday 08 June 2026  07:56:32 +0000 (0:00:13.925)       0:04:59.819 ***********",
                                "ok: [instance] => (item=/dev/ceph-instance-osd0/data)",
                                "ok: [instance] => (item=/dev/ceph-instance-osd1/data)",
                                "ok: [instance] => (item=/dev/ceph-instance-osd2/data)",
                                "",
                                "TASK [vexxhost.ceph.osd : Get mon dump] ****************************************",
                                "Monday 08 June 2026  07:58:04 +0000 (0:01:32.332)       0:06:32.151 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Mark require osd release] ****************************",
                                "Monday 08 June 2026  07:58:10 +0000 (0:00:05.828)       0:06:37.979 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Wait for all OSD to be running] **********************",
                                "Monday 08 June 2026  07:58:16 +0000 (0:00:06.121)       0:06:44.101 ***********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/ceph/roles/osd/tasks/check-osds.yml for instance",
                                "",
                                "TASK [vexxhost.ceph.osd : Set the retry count] *********************************",
                                "Monday 08 June 2026  07:58:16 +0000 (0:00:00.085)       0:06:44.187 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Get `ceph orch ps`] **********************************",
                                "Monday 08 June 2026  07:58:16 +0000 (0:00:00.059)       0:06:44.246 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : OSD daemon list] *************************************",
                                "Monday 08 June 2026  07:58:22 +0000 (0:00:06.127)       0:06:50.373 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Fail if any OSD not running] *************************",
                                "Monday 08 June 2026  07:58:23 +0000 (0:00:00.057)       0:06:50.430 ***********",
                                "skipping: [instance] => (item=1)",
                                "skipping: [instance] => (item=1)",
                                "skipping: [instance] => (item=1)",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.ceph.osd : Fail if any duplicate OSD ID] ************************",
                                "Monday 08 June 2026  07:58:23 +0000 (0:00:00.048)       0:06:50.479 ***********",
                                "skipping: [instance]",
                                "",
                                "PLAY [all] *********************************************************************",
                                "",
                                "TASK [Ensure RBD kernel module is loaded] **************************************",
                                "Monday 08 June 2026  07:58:23 +0000 (0:00:00.062)       0:06:50.541 ***********",
                                "changed: [instance]",
                                "",
                                "PLAY [all] *********************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:58:23 +0000 (0:00:00.327)       0:06:50.869 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.atmosphere.sysctl : Configure sysctl values] ********************",
                                "Monday 08 June 2026  07:58:24 +0000 (0:00:01.001)       0:06:51.871 ***********",
                                "changed: [instance] => (item={'name': 'fs.aio-max-nr', 'value': 1048576})",
                                "changed: [instance] => (item={'name': 'net.ipv4.tcp_timestamps', 'value': 0})",
                                "changed: [instance] => (item={'name': 'net.ipv4.tcp_sack', 'value': 1})",
                                "changed: [instance] => (item={'name': 'net.core.netdev_budget', 'value': 1000})",
                                "changed: [instance] => (item={'name': 'net.core.netdev_max_backlog', 'value': 250000})",
                                "changed: [instance] => (item={'name': 'net.core.rmem_max', 'value': 4194304})",
                                "changed: [instance] => (item={'name': 'net.core.wmem_max', 'value': 4194304})",
                                "changed: [instance] => (item={'name': 'net.core.rmem_default', 'value': 4194304})",
                                "changed: [instance] => (item={'name': 'net.core.wmem_default', 'value': 4194304})",
                                "changed: [instance] => (item={'name': 'net.core.optmem_max', 'value': 4194304})",
                                "changed: [instance] => (item={'name': 'net.ipv4.tcp_rmem', 'value': '4096 87380 4194304'})",
                                "changed: [instance] => (item={'name': 'net.ipv4.tcp_wmem', 'value': '4096 65536 4194304'})",
                                "changed: [instance] => (item={'name': 'net.ipv4.tcp_low_latency', 'value': 1})",
                                "changed: [instance] => (item={'name': 'net.ipv4.tcp_adv_win_scale', 'value': 1})",
                                "changed: [instance] => (item={'name': 'net.ipv4.neigh.default.gc_thresh1', 'value': 128})",
                                "changed: [instance] => (item={'name': 'net.ipv4.neigh.default.gc_thresh2', 'value': 28872})",
                                "changed: [instance] => (item={'name': 'net.ipv4.neigh.default.gc_thresh3', 'value': 32768})",
                                "changed: [instance] => (item={'name': 'net.ipv6.neigh.default.gc_thresh1', 'value': 128})",
                                "changed: [instance] => (item={'name': 'net.ipv6.neigh.default.gc_thresh2', 'value': 28872})",
                                "changed: [instance] => (item={'name': 'net.ipv6.neigh.default.gc_thresh3', 'value': 32768})",
                                "",
                                "TASK [vexxhost.atmosphere.ethtool : Create folder for persistent configuration] ***",
                                "Monday 08 June 2026  07:58:28 +0000 (0:00:04.006)       0:06:55.877 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.atmosphere.ethtool : Install persistent \"ethtool\" tuning] *******",
                                "Monday 08 June 2026  07:58:28 +0000 (0:00:00.205)       0:06:56.083 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.atmosphere.ethtool : Run \"ethtool\" tuning] **********************",
                                "Monday 08 June 2026  07:58:29 +0000 (0:00:00.471)       0:06:56.554 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [Set a fact with the \"atmosphere_images\" for other plays] *****************",
                                "Monday 08 June 2026  07:58:29 +0000 (0:00:00.265)       0:06:56.820 ***********",
                                "ok: [instance]",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:58:29 +0000 (0:00:00.050)       0:06:56.871 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Monday 08 June 2026  07:58:30 +0000 (0:00:00.974)       0:06:57.845 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Monday 08 June 2026  07:58:30 +0000 (0:00:00.218)       0:06:58.064 ***********",
                                "ok: [instance] => (item=/etc/keepalived/keepalived.conf)",
                                "ok: [instance] => (item=/etc/keepalived/check_apiserver.sh)",
                                "ok: [instance] => (item=/etc/kubernetes/manifests/keepalived.yaml)",
                                "ok: [instance] => (item=/etc/haproxy/haproxy.cfg)",
                                "ok: [instance] => (item=/etc/kubernetes/manifests/haproxy.yaml)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****",
                                "Monday 08 June 2026  07:58:31 +0000 (0:00:00.976)       0:06:59.040 ***********",
                                "failed: [instance] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}",
                                "failed: [instance] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}",
                                "failed: [instance] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********",
                                "Monday 08 June 2026  07:58:32 +0000 (0:00:00.558)       0:06:59.599 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Monday 08 June 2026  07:58:32 +0000 (0:00:00.198)       0:06:59.797 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Monday 08 June 2026  07:58:32 +0000 (0:00:00.209)       0:07:00.007 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Monday 08 June 2026  07:58:32 +0000 (0:00:00.039)       0:07:00.046 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Monday 08 June 2026  07:58:32 +0000 (0:00:00.034)       0:07:00.081 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Monday 08 June 2026  07:58:33 +0000 (0:00:00.561)       0:07:00.642 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Monday 08 June 2026  07:58:33 +0000 (0:00:00.222)       0:07:00.864 ***********",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 08 June 2026  07:58:33 +0000 (0:00:00.062)       0:07:00.927 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:58:34 +0000 (0:00:01.031)       0:07:01.958 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:58:34 +0000 (0:00:00.220)       0:07:02.178 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 08 June 2026  07:58:34 +0000 (0:00:00.054)       0:07:02.233 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:58:35 +0000 (0:00:00.245)       0:07:02.478 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:58:35 +0000 (0:00:00.059)       0:07:02.537 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:58:35 +0000 (0:00:00.362)       0:07:02.900 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:58:35 +0000 (0:00:00.058)       0:07:02.958 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 08 June 2026  07:58:35 +0000 (0:00:00.263)       0:07:03.222 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:58:37 +0000 (0:00:01.433)       0:07:04.656 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:58:37 +0000 (0:00:00.071)       0:07:04.727 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:58:37 +0000 (0:00:00.365)       0:07:05.092 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 08 June 2026  07:58:39 +0000 (0:00:02.053)       0:07:07.146 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 08 June 2026  07:58:39 +0000 (0:00:00.044)       0:07:07.190 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 08 June 2026  07:58:39 +0000 (0:00:00.039)       0:07:07.231 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 08 June 2026  07:58:39 +0000 (0:00:00.039)       0:07:07.270 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 08 June 2026  07:58:41 +0000 (0:00:01.260)       0:07:08.531 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 08 June 2026  07:58:41 +0000 (0:00:00.549)       0:07:09.080 ***********",
                                "ok: [instance] => (item={'path': '/etc/containerd'})",
                                "ok: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Monday 08 June 2026  07:58:42 +0000 (0:00:00.990)       0:07:10.071 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 08 June 2026  07:58:43 +0000 (0:00:00.518)       0:07:10.590 ***********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 08 June 2026  07:58:43 +0000 (0:00:00.009)       0:07:10.600 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Monday 08 June 2026  07:58:43 +0000 (0:00:00.383)       0:07:10.983 ***********",
                                "fatal: [instance]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on instance's Python /usr/bin/python3.10. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.669)       0:07:11.653 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.037)       0:07:11.691 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.030)       0:07:11.721 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.034)       0:07:11.755 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.044)       0:07:11.800 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.053)       0:07:11.854 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.225)       0:07:12.079 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:58:44 +0000 (0:00:00.042)       0:07:12.122 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:58:45 +0000 (0:00:01.047)       0:07:13.169 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:58:45 +0000 (0:00:00.052)       0:07:13.222 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:58:46 +0000 (0:00:00.217)       0:07:13.439 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:58:46 +0000 (0:00:00.053)       0:07:13.492 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:58:47 +0000 (0:00:01.119)       0:07:14.612 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 08 June 2026  07:58:47 +0000 (0:00:00.060)       0:07:14.673 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 08 June 2026  07:58:47 +0000 (0:00:00.037)       0:07:14.710 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 08 June 2026  07:58:47 +0000 (0:00:00.036)       0:07:14.747 ***********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 08 June 2026  07:58:47 +0000 (0:00:00.039)       0:07:14.786 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 08 June 2026  07:58:48 +0000 (0:00:01.145)       0:07:15.932 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 08 June 2026  07:58:49 +0000 (0:00:00.492)       0:07:16.425 ***********",
                                "ok: [instance] => (item={'path': '/etc/containerd'})",
                                "ok: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Monday 08 June 2026  07:58:49 +0000 (0:00:00.933)       0:07:17.358 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 08 June 2026  07:58:50 +0000 (0:00:00.554)       0:07:17.913 ***********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 08 June 2026  07:58:50 +0000 (0:00:00.011)       0:07:17.924 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 08 June 2026  07:58:50 +0000 (0:00:00.372)       0:07:18.297 ***********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:58:51 +0000 (0:00:00.214)       0:07:18.511 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/crictl-v1.35.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:58:51 +0000 (0:00:00.062)       0:07:18.573 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 08 June 2026  07:59:00 +0000 (0:00:09.034)       0:07:27.608 ***********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 08 June 2026  07:59:01 +0000 (0:00:01.416)       0:07:29.024 ***********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/critest-v1.35.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 08 June 2026  07:59:01 +0000 (0:00:00.063)       0:07:29.088 ***********",
                                "fatal: [instance]: FAILED! => {\"attempts\": 4, \"censored\": \"the output has been hidden due to the fact that 'no_log: true' was specified for this result\", \"changed\": false}",
                                "FAILED - RETRYING: [instance]: Download item (4 retries left).",
                                "FAILED - RETRYING: [instance]: Download item (3 retries left).",
                                "FAILED - RETRYING: [instance]: Download item (2 retries left).",
                                "FAILED - RETRYING: [instance]: Download item (1 retries left).",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "instance                   : ok=157  changed=38   unreachable=0    failed=1    skipped=34   rescued=0    ignored=2",
                                "",
                                "Monday 08 June 2026  07:59:26 +0000 (0:00:24.638)       0:07:53.726 ***********",
                                "===============================================================================",
                                "vexxhost.ceph.mon : Run Bootstrap command ------------------------------ 95.90s",
                                "vexxhost.ceph.osd : Install OSDs --------------------------------------- 92.33s",
                                "vexxhost.ceph.mon : Configure \"mon\" label for monitors ----------------- 54.10s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 24.64s",
                                "vexxhost.ceph.mon : Validate monitor exist ----------------------------- 14.06s",
                                "vexxhost.ceph.osd : Get `ceph-volume lvm list` status ------------------ 13.93s",
                                "vexxhost.ceph.mgr : Configure \"mgr\" label for managers ----------------- 12.11s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 9.03s",
                                "vexxhost.ceph.mgr : Configure manager modules --------------------------- 7.90s",
                                "vexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 6.37s",
                                "vexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 6.36s",
                                "vexxhost.ceph.cephadm_host : Add new host to Ceph ----------------------- 6.32s",
                                "vexxhost.ceph.osd : Get `ceph orch ps` ---------------------------------- 6.13s",
                                "vexxhost.ceph.osd : Mark require osd release ---------------------------- 6.12s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 6.04s",
                                "vexxhost.ceph.mgr : Validate manager exist ------------------------------ 5.98s",
                                "vexxhost.ceph.osd : Get mon dump ---------------------------------------- 5.83s",
                                "vexxhost.ceph.cephadm_host : Get public SSH key for \"cephadm\" user ------ 5.63s",
                                "vexxhost.ceph.osd : Ensure all OSDs are non-legacy ---------------------- 5.34s",
                                "vexxhost.ceph.cephadm : Install packages -------------------------------- 5.17s",
                                "CRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.aio/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/aio/converge.yml",
                                "ERROR    [aio > converge] \u001b[31mExecuted: Failed\u001b[0m",
                                "ERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.aio/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/aio/converge.yml"
                            ],
                            "zuul_log_id": "0242ac17-0010-e17f-cbb1-000000000006-1-instance"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:27.147664Z",
                            "start": "2026-06-08T07:50:19.455482Z"
                        },
                        "id": "0242ac17-0010-e17f-cbb1-000000000006",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 2,
            "failures": 1,
            "ignored": 0,
            "ok": 2,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/atmosphere/test-playbooks/molecule/post.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-08T07:59:38.288473Z",
                    "start": "2026-06-08T07:59:27.940052Z"
                },
                "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:28.322246Z",
                            "start": "2026-06-08T07:59:27.953921Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.116422",
                            "end": "2026-06-08 07:59:28.795956",
                            "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-ed0c-ad5e-00000000000d-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:28.679534",
                            "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-ed0c-ad5e-00000000000d-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:28.865591Z",
                            "start": "2026-06-08T07:59:28.346007Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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@199.204.45.35:/tmp/logs/system /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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@199.204.45.35:/tmp/logs/system",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "created directory /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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-ed0c-ad5e-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:29.536281Z",
                            "start": "2026-06-08T07:59:28.872767Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:29.941145Z",
                            "start": "2026-06-08T07:59:29.545168Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.075127",
                            "end": "2026-06-08 07:59:30.271899",
                            "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-ed0c-ad5e-000000000014-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:30.196772",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0608 07:59:30.261868   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:30.262799   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:30.265041   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:30.265778   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:30.267553   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "E0608 07:59:30.261868   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:30.262799   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:30.265041   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:30.265778   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:30.267553   38736 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-000000000014-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:30.516083Z",
                            "start": "2026-06-08T07:59:29.966150Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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@199.204.45.35:/tmp/logs/helm /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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@199.204.45.35:/tmp/logs/helm",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ helm/\ncd+++++++++ helm/releases/\ncd+++++++++ helm/values/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ helm/",
                                "cd+++++++++ helm/releases/",
                                "cd+++++++++ helm/values/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:31.012872Z",
                            "start": "2026-06-08T07:59:30.520749Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:31.258835Z",
                            "start": "2026-06-08T07:59:31.021957Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.226302",
                            "end": "2026-06-08 07:59:31.689264",
                            "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-ed0c-ad5e-00000000001a-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:31.462962",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nE0608 07:59:31.530510   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.531723   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.532631   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.534282   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.534998   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nE0608 07:59:31.537991   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.538846   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.540674   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.541382   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.543171   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nE0608 07:59:31.600409   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.601378   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.603268   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.604188   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.606721   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nE0608 07:59:31.613424   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.614207   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.616081   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nE0608 07:59:31.616922   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.618774   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nE0608 07:59:31.677107   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.678189   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.679036   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.680864   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:31.681592   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "E0608 07:59:31.530510   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.531723   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.532631   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.534282   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.534998   38790 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "E0608 07:59:31.537991   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.538846   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.540674   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.541382   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.543171   38797 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "E0608 07:59:31.600409   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.601378   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.603268   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.604188   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.606721   38830 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "E0608 07:59:31.613424   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.614207   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.616081   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "E0608 07:59:31.616922   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.618774   38837 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "E0608 07:59:31.677107   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.678189   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.679036   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.680864   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:31.681592   38868 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-00000000001a-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:31.806750Z",
                            "start": "2026-06-08T07:59:31.284588Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:32.019419Z",
                            "start": "2026-06-08T07:59:31.812061Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.073980",
                            "end": "2026-06-08 07:59:32.309541",
                            "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-ed0c-ad5e-00000000001c-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:32.235561",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nE0608 07:59:32.297163   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:32.298160   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:32.299860   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:32.300576   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:32.302437   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "E0608 07:59:32.297163   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:32.298160   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:32.299860   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:32.300576   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:32.302437   38904 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-00000000001c-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:32.567321Z",
                            "start": "2026-06-08T07:59:32.044075Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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@199.204.45.35:/tmp/logs/objects /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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@199.204.45.35:/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-ed0c-ad5e-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:33.084794Z",
                            "start": "2026-06-08T07:59:32.574979Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:33.302865Z",
                            "start": "2026-06-08T07:59:33.095418Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:33.527796Z",
                            "start": "2026-06-08T07:59:33.310079Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.071671",
                            "end": "2026-06-08 07:59:33.838723",
                            "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-ed0c-ad5e-000000000023-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:33.767052",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0608 07:59:33.826637   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:33.828163   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:33.829867   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:33.830837   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:33.833208   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "E0608 07:59:33.826637   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:33.828163   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:33.829867   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:33.830837   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:33.833208   38961 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-000000000023-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:34.071703Z",
                            "start": "2026-06-08T07:59:33.551548Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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@199.204.45.35:/tmp/logs/pod-logs /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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@199.204.45.35:/tmp/logs/pod-logs",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ pod-logs/\ncd+++++++++ pod-logs/failed-pods/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ pod-logs/",
                                "cd+++++++++ pod-logs/failed-pods/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:34.630764Z",
                            "start": "2026-06-08T07:59:34.078757Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:34.849365Z",
                            "start": "2026-06-08T07:59:34.640215Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.070485",
                            "end": "2026-06-08 07:59:35.119989",
                            "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-ed0c-ad5e-000000000029-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:35.049504",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0608 07:59:35.107094   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.108044   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.110130   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.111225   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.111989   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "E0608 07:59:35.107094   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.108044   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.110130   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.111225   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.111989   39008 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-000000000029-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:35.387904Z",
                            "start": "2026-06-08T07:59:34.873338Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.072487",
                            "end": "2026-06-08 07:59:35.672868",
                            "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-ed0c-ad5e-00000000002a-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:35.600381",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0608 07:59:35.661150   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.662116   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.663904   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.664469   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:35.666254   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nceph-mgr endpoints: ",
                            "stdout_lines": [
                                "E0608 07:59:35.661150   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.662116   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.663904   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.664469   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:35.666254   39037 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "ceph-mgr endpoints: "
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-00000000002a-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:35.930821Z",
                            "start": "2026-06-08T07:59:35.411802Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.075757",
                            "end": "2026-06-08 07:59:36.267289",
                            "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-ed0c-ad5e-00000000002b-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-08 07:59:36.191532",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0608 07:59:36.253116   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:36.254865   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:36.255689   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:36.258055   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nE0608 07:59:36.258908   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "E0608 07:59:36.253116   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:36.254865   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:36.255689   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:36.258055   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "E0608 07:59:36.258908   39066 memcache.go:265] couldn't get current server API group list: Get \"http://localhost:8080/api?timeout=32s\": dial tcp [::1]:8080: connect: connection refused",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-ed0c-ad5e-00000000002b-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:36.478161Z",
                            "start": "2026-06-08T07:59:35.956486Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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@199.204.45.35:/tmp/logs/prometheus /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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@199.204.45.35:/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-ed0c-ad5e-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:37.009942Z",
                            "start": "2026-06-08T07:59:36.482994Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-ed0c-ad5e-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:37.238090Z",
                            "start": "2026-06-08T07:59:37.018861Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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.007891",
                            "end": "2026-06-08 07:59:37.455130",
                            "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-ed0c-ad5e-000000000031-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-06-08 07:59:37.447239",
                            "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-ed0c-ad5e-000000000031-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ed0c-ad5e-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:37.784487Z",
                            "start": "2026-06-08T07:59:37.264671Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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@199.204.45.35:/tmp/logs/selenium /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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@199.204.45.35:/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-ed0c-ad5e-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:38.288473Z",
                            "start": "2026-06-08T07:59:37.791180Z"
                        },
                        "id": "0242ac17-0010-ed0c-ad5e-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-06-08T07:59:42.474243Z",
                    "start": "2026-06-08T07:59:39.171082Z"
                },
                "id": "0242ac17-0010-1f0b-be66-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-1f0b-be66-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:39.251573Z",
                            "start": "2026-06-08T07:59:39.204299Z"
                        },
                        "id": "0242ac17-0010-1f0b-be66-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1f0b-be66-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:39.306036Z",
                            "start": "2026-06-08T07:59:39.262402Z"
                        },
                        "id": "0242ac17-0010-1f0b-be66-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/dcc0833aeef84c1987d12919be094992/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1f0b-be66-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:40.182597Z",
                            "start": "2026-06-08T07:59:39.312271Z"
                        },
                        "id": "0242ac17-0010-1f0b-be66-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@199.204.45.35:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/logs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@199.204.45.35:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs",
                                        "src": "logs"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.35:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/artifacts/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@199.204.45.35:/home/zuul/zuul-output/artifacts/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/artifacts",
                                        "src": "artifacts"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.35:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/docs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@199.204.45.35:/home/zuul/zuul-output/docs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1f0b-be66-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:41.775247Z",
                            "start": "2026-06-08T07:59:40.192240Z"
                        },
                        "id": "0242ac17-0010-1f0b-be66-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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/artifacts/* /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.008308",
                                    "end": "2026-06-08 07:59:42.183853",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/artifacts/* /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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-06-08 07:59:42.175545",
                                    "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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/docs/* /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007165",
                                    "end": "2026-06-08 07:59:42.426634",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/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/dcc0833aeef84c1987d12919be094992/work/docs/* /var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/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-06-08 07:59:42.419469",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1f0b-be66-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:42.474243Z",
                            "start": "2026-06-08T07:59:41.787658Z"
                        },
                        "id": "0242ac17-0010-1f0b-be66-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-08T07:59:42.935411Z",
                    "start": "2026-06-08T07:59:42.485850Z"
                },
                "id": "0242ac17-0010-1f0b-be66-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDGd5trAGo001sSzemWV0dQQ8hkVVg7/xo/pnFrYyQd7tNBd9UGKuSkzEfawsIUSQbzzgFnv6/eMpmgB454Y/7kH3rcpTUlOuASUqEKj8FXQle9xWpjsJ0YSTeGSjc4jtjSyaHplGXoPOT6ZHyQ4icdDe2EwnkNIR3z+DqXvndG+4manY6z3se0Nf7Wrob6ZkaMBfQ0Mb7nx18wyFRo8lUotEEiz/zfBx6mtgePP6mZydtX/PS9Y5/daLb7A7K09O5F+g3T0vttBQPmJbL3l+Ebbw25VDmec1o/OjYg1Ng8GezQKARbXUZ1SQG1OrIkl+jPYW1WXpYuAZAEkcFfUyuPz+My7T+mH+ysqi+6QbRsfx6llmxplVz4urE2LAX07VGf9aUrNeWQ8ApUqd5UiB9vqRg9wSagKL+BP9OduBe0+weVBWtw3vn3uvZHlHZMmoBIvrS130E58YHyYLZMx1hX3tgQ69/BC6mIulCErHtnG64OzoAkdYJFiKmglVaU6QE= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDGd5trAGo001sSzemWV0dQQ8hkVVg7/xo/pnFrYyQd7tNBd9UGKuSkzEfawsIUSQbzzgFnv6/eMpmgB454Y/7kH3rcpTUlOuASUqEKj8FXQle9xWpjsJ0YSTeGSjc4jtjSyaHplGXoPOT6ZHyQ4icdDe2EwnkNIR3z+DqXvndG+4manY6z3se0Nf7Wrob6ZkaMBfQ0Mb7nx18wyFRo8lUotEEiz/zfBx6mtgePP6mZydtX/PS9Y5/daLb7A7K09O5F+g3T0vttBQPmJbL3l+Ebbw25VDmec1o/OjYg1Ng8GezQKARbXUZ1SQG1OrIkl+jPYW1WXpYuAZAEkcFfUyuPz+My7T+mH+ysqi+6QbRsfx6llmxplVz4urE2LAX07VGf9aUrNeWQ8ApUqd5UiB9vqRg9wSagKL+BP9OduBe0+weVBWtw3vn3uvZHlHZMmoBIvrS130E58YHyYLZMx1hX3tgQ69/BC6mIulCErHtnG64OzoAkdYJFiKmglVaU6QE= 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-1f0b-be66-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/dcc0833aeef84c1987d12919be094992/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-08T07:59:42.935411Z",
                            "start": "2026-06-08T07:59:42.493529Z"
                        },
                        "id": "0242ac17-0010-1f0b-be66-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
}
]
