[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-04-07T05:45:35.209624Z",
                    "start": "2026-04-07T05:45:32.280845Z"
                },
                "id": "0242ac17-0011-66b7-9b99-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-04-07",
                                    "day": "07",
                                    "epoch": "1775540733",
                                    "epoch_int": "1775540733",
                                    "hour": "05",
                                    "iso8601": "2026-04-07T05:45:33Z",
                                    "iso8601_basic": "20260407T054533302458",
                                    "iso8601_basic_short": "20260407T054533",
                                    "iso8601_micro": "2026-04-07T05:45:33.302458Z",
                                    "minute": "45",
                                    "month": "04",
                                    "second": "33",
                                    "time": "05:45:33",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "14",
                                    "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/3aa0353696cd461ba80d22e6850d92e5/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work",
                                    "HOSTNAME": "0a8996d2b663",
                                    "LANG": "C.UTF-8",
                                    "PATH": "/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                                    "PWD": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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": "1786285",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-ILnTMoess7oa/agent.1786284",
                                    "TMP": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "0a8996d2b663",
                                "ansible_hostname": "0a8996d2b663",
                                "ansible_hostnqn": "",
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "5.15.0-130-generic",
                                "ansible_kernel_version": "#140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024",
                                "ansible_loadavg": {
                                    "15m": 3.58837890625,
                                    "1m": 10.85009765625,
                                    "5m": 6.224609375
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 2163,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 14525,
                                        "used": 17565
                                    },
                                    "real": {
                                        "free": 2163,
                                        "total": 32090,
                                        "used": 29927
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 201008468,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 62932249,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 60449845,
                                        "inode_total": 67108864,
                                        "inode_used": 6659019,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 823330684928,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7502642,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 33098938,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 15799887,
                                        "inode_total": 20643840,
                                        "inode_used": 4843953,
                                        "mount": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 30730821632,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "0a8996d2b663",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-5.15.0-130-generic",
                                    "console": [
                                        "tty1",
                                        "ttyS0"
                                    ],
                                    "ro": true,
                                    "root": "UUID=5a569d86-b935-46dd-ae79-7a72a25b6a4c"
                                },
                                "ansible_processor": [
                                    "0",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "1",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "2",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "3",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "4",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "5",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "6",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "7",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "8",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "9",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "10",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "11",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "12",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "13",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "14",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "15",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 16,
                                "ansible_processor_nproc": 16,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 16,
                                "ansible_product_name": "NA",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "NA",
                                "ansible_python": {
                                    "executable": "/usr/local/lib/zuul/ansible/9/bin/python",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 14,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        14,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.14",
                                "ansible_real_group_id": 0,
                                "ansible_real_user_id": 0,
                                "ansible_selinux": {
                                    "status": "disabled"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "bwrap",
                                "ansible_swapfree_mb": 0,
                                "ansible_swaptotal_mb": 0,
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": "N/A",
                                "ansible_system_capabilities_enforced": "N/A",
                                "ansible_system_vendor": "NA",
                                "ansible_uptime_seconds": 39204462,
                                "ansible_user_dir": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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-04-07T05:45:33.438119Z",
                            "start": "2026-04-07T05:45:32.289493Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:33.462395Z",
                            "start": "2026-04-07T05:45:33.443522Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "3aa/oss/3aa0353696cd461ba80d22e6850d92e5"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:33.504699Z",
                            "start": "2026-04-07T05:45:33.475499Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.16\nJob: atmosphere-molecule-keycloak\nPipeline: check\nExecutor: 0a8996d2b663\nTriggered by: https://github.com/vexxhost/atmosphere/pull/3740\nEvent ID: d8bb1420-3244-11f1-8da5-b01c5cd6fca0\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:33.552587Z",
                            "start": "2026-04-07T05:45:33.512520Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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: np0000163848\nUsername: zuul\nDistro: Ubuntu 22.04\nProvider: yul1\nRegion: ca-ymq-1\nLabel: ubuntu-jammy\nProduct Name: OpenStack Nova\nInterface IP: 199.204.45.74\n",
                                    "zj_item": "instance"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:33.646671Z",
                            "start": "2026-04-07T05:45:33.556388Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:34.212774Z",
                            "start": "2026-04-07T05:45:33.656211Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "c69d1148810da214bad20aae7c3fab41b1056c23",
                            "dest": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "c69d1148810da214bad20aae7c3fab41b1056c23",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/.ansible/tmp/ansible-tmp-1775540734.247774-84-14473991901122/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "7c3de6752d95db028d3199fdc85f536a",
                            "mode": "0644",
                            "owner": "root",
                            "size": 30442,
                            "src": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/.ansible/tmp/ansible-tmp-1775540734.247774-84-14473991901122/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:35.209624Z",
                            "start": "2026-04-07T05:45:34.219888Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-04-07T05:45:42.302581Z",
                    "start": "2026-04-07T05:45:35.215769Z"
                },
                "id": "0242ac17-0011-66b7-9b99-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/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:35.471555Z",
                            "start": "2026-04-07T05:45:35.234736Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:35.512514Z",
                            "start": "2026-04-07T05:45:35.479139Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.473059",
                            "end": "2026-04-07 05:45:36.401430",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa -b 3072",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-66b7-9b99-00000000009c-0-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:45:35.928371",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa.pub\nThe key fingerprint is:\nSHA256:kTH2sqV+kXvJISdTBsNFgoLRK4vyb4NHKy7dHU8PsyA zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|    .+  +o+oo    |\n|    . o..=.+     |\n|       o+ o o    |\n|    . .  * +     |\n|   . o  S * o    |\n|. . E o.+  O o   |\n| + + + =.=o +    |\n|. = * . o...     |\n| o.=..           |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:kTH2sqV+kXvJISdTBsNFgoLRK4vyb4NHKy7dHU8PsyA zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|    .+  +o+oo    |",
                                "|    . o..=.+     |",
                                "|       o+ o o    |",
                                "|    . .  * +     |",
                                "|   . o  S * o    |",
                                "|. . E o.+  O o   |",
                                "| + + + =.=o +    |",
                                "|. = * . o...     |",
                                "| o.=..           |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0011-66b7-9b99-00000000009c-0-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:36.454732Z",
                            "start": "2026-04-07T05:45:35.535497Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:36.494193Z",
                            "start": "2026-04-07T05:45:36.461046Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:36.538211Z",
                            "start": "2026-04-07T05:45:36.512766Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDW1yT0DdIxxvotJwrpofDRT+GxTgyc+oDsbXmFIxCFf7d9QUHfxCUVpVwRHcqhoWtL5TbLEsJa41KoZar9uWOyXlhgbjy9W+L7EljvkfW+dWiFQFjJckwEOlCfuxZD3jMspCaJkP0VzoAaQG8hG7uEs7ptoU0jyFUaQStGT29Eo7rmeZaO8+eglLvu2W+cqFEjVrEK/Y10BLCiyLNOJWNYRPdkJnBbJCPkPLSIiciCGGRCls9coLV6ABfdElvbrycm11c4HBvQn8YDS3qEQs2zG24f8nTEoTONltPBR1aeVrr0C/eVXF/C/64Bnpf+UvSgfgIPtYia51LsLF+gXFvz20ZhQ0re+aPyFMMmOMHRlbkyG7NMgpJklM66vy0Z2en4HhVWH/UTE+nFPoudNVj/Q0m1O5U6dZMLkMJ/P8z4tYnoEb03ypo5a4fYq6pus1rMEL7vEsx2MNv37S0GDfqoiN/ROjnWO/XW3Fm56lxNyXwzRyiv/1XMbw6G/IQHryM= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDW1yT0DdIxxvotJwrpofDRT+GxTgyc+oDsbXmFIxCFf7d9QUHfxCUVpVwRHcqhoWtL5TbLEsJa41KoZar9uWOyXlhgbjy9W+L7EljvkfW+dWiFQFjJckwEOlCfuxZD3jMspCaJkP0VzoAaQG8hG7uEs7ptoU0jyFUaQStGT29Eo7rmeZaO8+eglLvu2W+cqFEjVrEK/Y10BLCiyLNOJWNYRPdkJnBbJCPkPLSIiciCGGRCls9coLV6ABfdElvbrycm11c4HBvQn8YDS3qEQs2zG24f8nTEoTONltPBR1aeVrr0C/eVXF/C/64Bnpf+UvSgfgIPtYia51LsLF+gXFvz20ZhQ0re+aPyFMMmOMHRlbkyG7NMgpJklM66vy0Z2en4HhVWH/UTE+nFPoudNVj/Q0m1O5U6dZMLkMJ/P8z4tYnoEb03ypo5a4fYq6pus1rMEL7vEsx2MNv37S0GDfqoiN/ROjnWO/XW3Fm56lxNyXwzRyiv/1XMbw6G/IQHryM= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "present",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:36.993740Z",
                            "start": "2026-04-07T05:45:36.549231Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:37.184126Z",
                            "start": "2026-04-07T05:45:36.999442Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "97b0420f35ce28e3207e8f07437651b30b256b56",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "3aa0353696cd461ba80d22e6850d92e5_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "97b0420f35ce28e3207e8f07437651b30b256b56",
                                    "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-1775540737.2344007-190-234627055801484/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "bc0a1dac493470f3a50a81299a6b4c5d",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1775540737.2344007-190-234627055801484/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:37.652001Z",
                            "start": "2026-04-07T05:45:37.192099Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "899af98defbf9afdb11ec679083a94abb6adeedc",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "3aa0353696cd461ba80d22e6850d92e5_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "899af98defbf9afdb11ec679083a94abb6adeedc",
                                    "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-1775540737.7058349-200-45177161453615/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "dad263da922678d0976c073e2ee34b35",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1775540737.7058349-200-45177161453615/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:38.109816Z",
                            "start": "2026-04-07T05:45:37.660558Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:38.129960Z",
                            "start": "2026-04-07T05:45:38.114724Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:38.531247Z",
                            "start": "2026-04-07T05:45:38.135155Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa"
                            ],
                            "delta": "0:00:00.012581",
                            "end": "2026-04-07 05:45:38.778195",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-66b7-9b99-0000000000ab-0-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:45:38.765614",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/3aa0353696cd461ba80d22e6850d92e5_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0011-66b7-9b99-0000000000ab-0-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:38.844925Z",
                            "start": "2026-04-07T05:45:38.541232Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:39.154649Z",
                            "start": "2026-04-07T05:45:38.850059Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:39.217438Z",
                            "start": "2026-04-07T05:45:39.160689Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:39.615532Z",
                            "start": "2026-04-07T05:45:39.246404Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:41.270266Z",
                            "start": "2026-04-07T05:45:39.620768Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:41.778056Z",
                            "start": "2026-04-07T05:45:41.284686Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-0011-66b7-9b99-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:42.302581Z",
                            "start": "2026-04-07T05:45:41.787317Z"
                        },
                        "id": "0242ac17-0011-66b7-9b99-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-04-07T05:45:45.768337Z",
                    "start": "2026-04-07T05:45:43.039907Z"
                },
                "id": "0242ac17-0011-ceb1-198a-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-1775540743.0932999-5-281025093243864/uv-x86_64-unknown-linux-gnuhfrzkfps.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-1775540743.0932999-5-281025093243864/uv-x86_64-unknown-linux-gnuhfrzkfps.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-ceb1-198a-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:45.229218Z",
                            "start": "2026-04-07T05:45:43.056900Z"
                        },
                        "id": "0242ac17-0011-ceb1-198a-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.011049",
                            "end": "2026-04-07 05:45:45.575749",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/local/bin/uv --version",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-ceb1-198a-000000000008-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:45:45.564700",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0011-ceb1-198a-000000000008-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-ceb1-198a-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:45.768337Z",
                            "start": "2026-04-07T05:45:45.253860Z"
                        },
                        "id": "0242ac17-0011-ceb1-198a-000000000008",
                        "name": "Print version"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 2,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "stable/zed",
    "index": "2",
    "phase": "pre",
    "playbook": "github.com/vexxhost/atmosphere/test-playbooks/molecule/pre.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-04-07T05:45:56.470052Z",
                    "start": "2026-04-07T05:45:46.615119Z"
                },
                "id": "0242ac17-0011-d428-4f3a-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.apt",
                            "cache_update_time": 1775540752,
                            "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 0 not upgraded.\nNeed to get 357 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.1 [133 kB]\nGet:3 http://nova.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 jq amd64 1.6-2.1ubuntu3.1 [52.5 kB]\nFetched 357 kB in 1s (501 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 ... 30906 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.1_amd64.deb ...\r\nUnpacking libjq1:amd64 (1.6-2.1ubuntu3.1) ...\r\nSelecting previously unselected package jq.\r\nPreparing to unpack .../jq_1.6-2.1ubuntu3.1_amd64.deb ...\r\nUnpacking jq (1.6-2.1ubuntu3.1) ...\r\nSetting up libonig5:amd64 (6.9.7.1-2build1) ...\r\nSetting up libjq1:amd64 (1.6-2.1ubuntu3.1) ...\r\nSetting up jq (1.6-2.1ubuntu3.1) ...\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 0 not upgraded.",
                                "Need to get 357 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.1 [133 kB]",
                                "Get:3 http://nova.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 jq amd64 1.6-2.1ubuntu3.1 [52.5 kB]",
                                "Fetched 357 kB in 1s (501 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 ... 30906 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.1_amd64.deb ...",
                                "Unpacking libjq1:amd64 (1.6-2.1ubuntu3.1) ...",
                                "Selecting previously unselected package jq.",
                                "Preparing to unpack .../jq_1.6-2.1ubuntu3.1_amd64.deb ...",
                                "Unpacking jq (1.6-2.1ubuntu3.1) ...",
                                "Setting up libonig5:amd64 (6.9.7.1-2build1) ...",
                                "Setting up libjq1:amd64 (1.6-2.1ubuntu3.1) ...",
                                "Setting up jq (1.6-2.1ubuntu3.1) ...",
                                "Processing triggers for libc-bin (2.35-0ubuntu3.13) ..."
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:56.470052Z",
                            "start": "2026-04-07T05:45:46.631687Z"
                        },
                        "id": "0242ac17-0011-d428-4f3a-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-04-07T05:48:00.014413Z",
                    "start": "2026-04-07T05:45:57.226238Z"
                },
                "id": "0242ac17-0011-2ded-2e21-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "c69d1148810da214bad20aae7c3fab41b1056c23",
                            "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": "c69d1148810da214bad20aae7c3fab41b1056c23",
                                    "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-1775540757.2786698-5-25480805206102/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "7c3de6752d95db028d3199fdc85f536a",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 30442,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1775540757.2786698-5-25480805206102/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:45:58.077489Z",
                            "start": "2026-04-07T05:45:57.237683Z"
                        },
                        "id": "0242ac17-0011-2ded-2e21-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-04-07T05:45:58.338716Z",
                            "start": "2026-04-07T05:45:58.082274Z"
                        },
                        "id": "0242ac17-0011-2ded-2e21-000000000005",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "keycloak"
                            ],
                            "delta": "0:02:01.027600",
                            "end": "2026-04-07 05:47:59.697365",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s keycloak",
                                    "_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-0011-2ded-2e21-000000000006-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 2,
                            "start": "2026-04-07 05:45:58.669765",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Using 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 rjsonnet (1.2MiB)\nDownloading ansible-core (2.1MiB)\nDownloading netaddr (2.2MiB)\nDownloading openstacksdk (1.7MiB)\nDownloading cryptography (4.2MiB)\nDownloading kubernetes (1.9MiB)\nDownloading pygments (1.2MiB)\nDownloading setuptools (1.1MiB)\n Downloading rjsonnet\n   Building pyperclip==1.9.0\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 79 packages in 40ms\nWARNING  Molecule scenarios should migrate to 'extensions/molecule'\nINFO     [keycloak > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [keycloak > prerun] Performing prerun with role_name_check=0...\nINFO     [keycloak > dependency] Executing\nWARNING  [keycloak > dependency] Missing roles requirements file: requirements.yml\nWARNING  [keycloak > dependency] Missing collections requirements file: collections.yml\nWARNING  [keycloak > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [keycloak > cleanup] Executing\nWARNING  [keycloak > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [keycloak > destroy] Executing\nWARNING  [keycloak > destroy] Skipping, '--destroy=never' requested.\nINFO     [keycloak > destroy] Executed: Successful\nINFO     [keycloak > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/atmosphere/molecule/keycloak/converge.yml\nINFO     [keycloak > syntax] Executed: Successful\nINFO     [keycloak > create] Executing\nWARNING  [keycloak > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [keycloak > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 07 April 2026  05:46:42 +0000 (0:00:00.024)       0:00:00.024 *********\n[WARNING]: Platform linux on host instance is using the discovered Python\ninterpreter at /usr/bin/python3.10, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.17/reference_appendices/interpreter_discovery.html for more information.\nok: [instance]\n\nTASK [Configure short hostname] ************************************************\nTuesday 07 April 2026  05:46:43 +0000 (0:00:01.187)       0:00:01.211 *********\nchanged: [instance]\n\nTASK [Ensure hostname inside hosts file] ***************************************\nTuesday 07 April 2026  05:46:44 +0000 (0:00:00.724)       0:00:01.936 *********\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] **************************\nTuesday 07 April 2026  05:46:44 +0000 (0:00:00.308)       0:00:02.245 *********\nok: [instance]\n\nTASK [Purge \"snapd\" package] ***************************************************\nTuesday 07 April 2026  05:46:45 +0000 (0:00:01.236)       0:00:03.481 *********\nok: [instance]\n\nPLAY [Generate workspace for Atmosphere] ***************************************\n\nTASK [Create folders for workspace] ********************************************\nTuesday 07 April 2026  05:46:46 +0000 (0:00:00.859)       0:00:04.341 *********\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] *****************\nTuesday 07 April 2026  05:46:47 +0000 (0:00:01.065)       0:00:05.406 *********\nchanged: [localhost]\n\nTASK [Load the current Ceph control plane configuration into a variable] *******\nTuesday 07 April 2026  05:46:48 +0000 (0:00:00.186)       0:00:05.592 *********\nok: [localhost]\n\nTASK [Generate Ceph control plane values for missing variables] ****************\nTuesday 07 April 2026  05:46:48 +0000 (0:00:00.027)       0:00:05.620 *********\nok: [localhost] => (item={'key': 'ceph_fsid', 'value': 'fd4e967b-dd63-5620-8a7c-41cbcf79a215'})\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] *****************\nTuesday 07 April 2026  05:46:48 +0000 (0:00:00.053)       0:00:05.673 *********\nchanged: [localhost]\n\nPLAY [Generate Ceph OSD configuration for workspace] ***************************\n\nTASK [Ensure the Ceph OSDs configuration file exists] **************************\nTuesday 07 April 2026  05:46:48 +0000 (0:00:00.647)       0:00:06.320 *********\nchanged: [localhost]\n\nTASK [Load the current Ceph OSDs configuration into a variable] ****************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.174)       0:00:06.495 *********\nok: [localhost]\n\nTASK [Generate Ceph OSDs values for missing variables] *************************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.024)       0:00:06.520 *********\nok: [localhost] => (item={'key': 'ceph_osd_devices', 'value': ['/dev/vdb', '/dev/vdc', '/dev/vdd']})\n\nTASK [Write new Ceph OSDs configuration file to disk] **************************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.033)       0:00:06.553 *********\nchanged: [localhost]\n\nPLAY [Generate Kubernetes configuration for workspace] *************************\n\nTASK [Ensure the Kubernetes configuration file exists] *************************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.347)       0:00:06.901 *********\nchanged: [localhost]\n\nTASK [Load the current Kubernetes configuration into a variable] ***************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.168)       0:00:07.069 *********\nok: [localhost]\n\nTASK [Generate Kubernetes values for missing variables] ************************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.026)       0:00:07.095 *********\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] *************************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.038)       0:00:07.134 *********\nchanged: [localhost]\n\nPLAY [Generate Keepalived configuration for workspace] *************************\n\nTASK [Ensure the Keeaplived configuration file exists] *************************\nTuesday 07 April 2026  05:46:49 +0000 (0:00:00.343)       0:00:07.478 *********\nchanged: [localhost]\n\nTASK [Load the current Keepalived configuration into a variable] ***************\nTuesday 07 April 2026  05:46:50 +0000 (0:00:00.171)       0:00:07.650 *********\nok: [localhost]\n\nTASK [Generate Keepalived values for missing variables] ************************\nTuesday 07 April 2026  05:46:50 +0000 (0:00:00.030)       0:00:07.681 *********\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] *************************\nTuesday 07 April 2026  05:46:50 +0000 (0:00:00.041)       0:00:07.722 *********\nchanged: [localhost]\n\nPLAY [Generate endpoints for workspace] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 07 April 2026  05:46:50 +0000 (0:00:00.355)       0:00:08.078 *********\nok: [localhost]\n\nTASK [Ensure the endpoints file exists] ****************************************\nTuesday 07 April 2026  05:46:51 +0000 (0:00:00.697)       0:00:08.775 *********\nchanged: [localhost]\n\nTASK [Load the current endpoints into a variable] ******************************\nTuesday 07 April 2026  05:46:51 +0000 (0:00:00.182)       0:00:08.957 *********\nok: [localhost]\n\nTASK [Generate endpoint skeleton for missing variables] ************************\nTuesday 07 April 2026  05:46:51 +0000 (0:00:00.031)       0:00:08.989 *********\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_senlin_api_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] ****************************************\nTuesday 07 April 2026  05:46:52 +0000 (0:00:00.840)       0:00:09.830 *********\nchanged: [localhost]\n\nTASK [Ensure the endpoints file exists] ****************************************\nTuesday 07 April 2026  05:46:52 +0000 (0:00:00.387)       0:00:10.217 *********\nchanged: [localhost]\n\nPLAY [Generate Neutron configuration for workspace] ****************************\n\nTASK [Ensure the Neutron configuration file exists] ****************************\nTuesday 07 April 2026  05:46:52 +0000 (0:00:00.268)       0:00:10.486 *********\nchanged: [localhost]\n\nTASK [Load the current Neutron configuration into a variable] ******************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.184)       0:00:10.671 *********\nok: [localhost]\n\nTASK [Generate Neutron values for missing variables] ***************************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.030)       0:00:10.702 *********\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] ****************************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.043)       0:00:10.745 *********\nchanged: [localhost]\n\nPLAY [Generate Nova configuration for workspace] *******************************\n\nTASK [Ensure the Nova configuration file exists] *******************************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.354)       0:00:11.100 *********\nchanged: [localhost]\n\nTASK [Load the current Nova configuration into a variable] *********************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.212)       0:00:11.312 *********\nok: [localhost]\n\nTASK [Generate Nova values for missing variables] ******************************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.031)       0:00:11.343 *********\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] *******************************\nTuesday 07 April 2026  05:46:53 +0000 (0:00:00.040)       0:00:11.384 *********\nchanged: [localhost]\n\nPLAY [Generate secrets for workspace] ******************************************\n\nTASK [Ensure the secrets file exists] ******************************************\nTuesday 07 April 2026  05:46:54 +0000 (0:00:00.360)       0:00:11.744 *********\nchanged: [localhost]\n\nTASK [Load the current secrets into a variable] ********************************\nTuesday 07 April 2026  05:46:54 +0000 (0:00:00.179)       0:00:11.923 *********\nok: [localhost]\n\nTASK [Generate secrets for missing variables] **********************************\nTuesday 07 April 2026  05:46:54 +0000 (0:00:00.033)       0:00:11.957 *********\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_senlin_keystone_password)\nok: [localhost] => (item=openstack_helm_endpoints_senlin_mariadb_password)\nok: [localhost] => (item=openstack_helm_endpoints_senlin_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] *****************************************\nTuesday 07 April 2026  05:46:54 +0000 (0:00:00.418)       0:00:12.375 *********\nok: [localhost] => (item=barbican_kek)\n\nTASK [Generate temporary files for generating keys for missing variables] ******\nTuesday 07 April 2026  05:46:54 +0000 (0:00:00.051)       0:00:12.427 *********\nchanged: [localhost] => (item=manila_ssh_key)\nchanged: [localhost] => (item=nova_ssh_key)\n\nTASK [Generate SSH keys for missing variables] *********************************\nTuesday 07 April 2026  05:46:55 +0000 (0:00:00.415)       0:00:12.843 *********\nchanged: [localhost] => (item=manila_ssh_key)\nchanged: [localhost] => (item=nova_ssh_key)\n\nTASK [Set values for SSH keys] *************************************************\nTuesday 07 April 2026  05:46:58 +0000 (0:00:03.504)       0:00:16.347 *********\nok: [localhost] => (item=manila_ssh_key)\nok: [localhost] => (item=nova_ssh_key)\n\nTASK [Delete the temporary files generated for SSH keys] ***********************\nTuesday 07 April 2026  05:46:58 +0000 (0:00:00.059)       0:00:16.407 *********\nchanged: [localhost] => (item=manila_ssh_key)\nchanged: [localhost] => (item=nova_ssh_key)\n\nTASK [Write new secrets file to disk] ******************************************\nTuesday 07 April 2026  05:46:59 +0000 (0:00:00.376)       0:00:16.783 *********\nchanged: [localhost]\n\nTASK [Encrypt secrets file with Vault password] ********************************\nTuesday 07 April 2026  05:46:59 +0000 (0:00:00.368)       0:00:17.151 *********\nskipping: [localhost]\n\nPLAY [all] *********************************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 07 April 2026  05:46:59 +0000 (0:00:00.047)       0:00:17.199 *********\nok: [instance]\n\nTASK [vexxhost.atmosphere.sysctl : Configure sysctl values] ********************\nTuesday 07 April 2026  05:47:00 +0000 (0:00:00.722)       0:00:17.922 *********\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] ***\nTuesday 07 April 2026  05:47:05 +0000 (0:00:04.808)       0:00:22.730 *********\nchanged: [instance]\n\nTASK [vexxhost.atmosphere.ethtool : Install persistent \"ethtool\" tuning] *******\nTuesday 07 April 2026  05:47:05 +0000 (0:00:00.198)       0:00:22.928 *********\nchanged: [instance]\n\nTASK [vexxhost.atmosphere.ethtool : Run \"ethtool\" tuning] **********************\nTuesday 07 April 2026  05:47:05 +0000 (0:00:00.489)       0:00:23.417 *********\nok: [instance]\n\nTASK [Set a fact with the \"atmosphere_images\" for other plays] *****************\nTuesday 07 April 2026  05:47:06 +0000 (0:00:00.311)       0:00:23.729 *********\nok: [instance]\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 07 April 2026  05:47:06 +0000 (0:00:00.137)       0:00:23.866 *********\nok: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nTuesday 07 April 2026  05:47:07 +0000 (0:00:00.707)       0:00:24.574 *********\nchanged: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nTuesday 07 April 2026  05:47:07 +0000 (0:00:00.213)       0:00:24.787 *********\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] ****\nTuesday 07 April 2026  05:47:08 +0000 (0:00:00.866)       0:00:25.653 *********\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] *********\nTuesday 07 April 2026  05:47:08 +0000 (0:00:00.595)       0:00:26.249 *********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nTuesday 07 April 2026  05:47:08 +0000 (0:00:00.191)       0:00:26.440 *********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nTuesday 07 April 2026  05:47:09 +0000 (0:00:00.185)       0:00:26.626 *********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nTuesday 07 April 2026  05:47:09 +0000 (0:00:00.034)       0:00:26.661 *********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nTuesday 07 April 2026  05:47:09 +0000 (0:00:00.048)       0:00:26.709 *********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nTuesday 07 April 2026  05:47:09 +0000 (0:00:00.551)       0:00:27.261 *********\nok: [instance]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nTuesday 07 April 2026  05:47:09 +0000 (0:00:00.205)       0:00:27.467 *********\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 07 April 2026  05:47:10 +0000 (0:00:00.057)       0:00:27.524 *********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 07 April 2026  05:47:10 +0000 (0:00:00.706)       0:00:28.230 *********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 07 April 2026  05:47:10 +0000 (0:00:00.213)       0:00:28.444 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nTuesday 07 April 2026  05:47:10 +0000 (0:00:00.039)       0:00:28.484 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:11 +0000 (0:00:00.206)       0:00:28.691 *********\nok: [instance] => {\n    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 07 April 2026  05:47:11 +0000 (0:00:00.074)       0:00:28.765 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 07 April 2026  05:47:11 +0000 (0:00:00.678)       0:00:29.444 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 07 April 2026  05:47:12 +0000 (0:00:00.047)       0:00:29.492 *********\nok: [instance]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 07 April 2026  05:47:12 +0000 (0:00:00.198)       0:00:29.690 *********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:13 +0000 (0:00:01.014)       0:00:30.704 *********\nok: [instance] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.0/containerd-2.2.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 07 April 2026  05:47:13 +0000 (0:00:00.054)       0:00:30.759 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 07 April 2026  05:47:14 +0000 (0:00:00.818)       0:00:31.578 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 07 April 2026  05:47:16 +0000 (0:00:02.787)       0:00:34.366 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 07 April 2026  05:47:16 +0000 (0:00:00.024)       0:00:34.390 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 07 April 2026  05:47:16 +0000 (0:00:00.036)       0:00:34.427 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 07 April 2026  05:47:16 +0000 (0:00:00.032)       0:00:34.460 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 07 April 2026  05:47:22 +0000 (0:00:05.950)       0:00:40.411 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 07 April 2026  05:47:23 +0000 (0:00:00.457)       0:00:40.869 *********\nchanged: [instance] => (item={'path': '/etc/containerd'})\nchanged: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nchanged: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})\nchanged: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nchanged: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nTuesday 07 April 2026  05:47:24 +0000 (0:00:00.911)       0:00:41.780 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 07 April 2026  05:47:24 +0000 (0:00:00.486)       0:00:42.267 *********\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nTuesday 07 April 2026  05:47:24 +0000 (0:00:00.007)       0:00:42.274 *********\nchanged: [instance]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nTuesday 07 April 2026  05:47:25 +0000 (0:00:00.620)       0:00:42.895 *********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 07 April 2026  05:47:26 +0000 (0:00:00.610)       0:00:43.505 *********\nchanged: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nTuesday 07 April 2026  05:47:26 +0000 (0:00:00.528)       0:00:44.034 *********\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] ***\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.529)       0:00:44.563 *********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.029)       0:00:44.593 *********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.039)       0:00:44.632 *********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.031)       0:00:44.664 *********\nskipping: [instance]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.030)       0:00:44.694 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.033)       0:00:44.727 *********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.190)       0:00:44.918 *********\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] *******************\nTuesday 07 April 2026  05:47:27 +0000 (0:00:00.038)       0:00:44.957 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 07 April 2026  05:47:28 +0000 (0:00:00.931)       0:00:45.888 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 07 April 2026  05:47:28 +0000 (0:00:00.030)       0:00:45.918 *********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:28 +0000 (0:00:00.191)       0:00:46.110 *********\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] *******************\nTuesday 07 April 2026  05:47:28 +0000 (0:00:00.032)       0:00:46.143 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 07 April 2026  05:47:29 +0000 (0:00:00.788)       0:00:46.932 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 07 April 2026  05:47:29 +0000 (0:00:00.043)       0:00:46.975 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 07 April 2026  05:47:29 +0000 (0:00:00.032)       0:00:47.007 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 07 April 2026  05:47:29 +0000 (0:00:00.029)       0:00:47.037 *********\nskipping: [instance]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 07 April 2026  05:47:29 +0000 (0:00:00.028)       0:00:47.065 *********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 07 April 2026  05:47:30 +0000 (0:00:00.963)       0:00:48.029 *********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 07 April 2026  05:47:30 +0000 (0:00:00.419)       0:00:48.449 *********\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] **********\nTuesday 07 April 2026  05:47:31 +0000 (0:00:00.910)       0:00:49.359 *********\nok: [instance]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 07 April 2026  05:47:32 +0000 (0:00:00.491)       0:00:49.850 *********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 07 April 2026  05:47:32 +0000 (0:00:00.007)       0:00:49.858 *********\nok: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 07 April 2026  05:47:32 +0000 (0:00:00.329)       0:00:50.187 *********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:32 +0000 (0:00:00.203)       0:00:50.390 *********\nok: [instance] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 07 April 2026  05:47:32 +0000 (0:00:00.057)       0:00:50.448 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 07 April 2026  05:47:33 +0000 (0:00:00.583)       0:00:51.032 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:34 +0000 (0:00:01.383)       0:00:52.415 *********\nok: [instance] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/critest-v1.34.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 07 April 2026  05:47:34 +0000 (0:00:00.047)       0:00:52.463 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 07 April 2026  05:47:35 +0000 (0:00:00.554)       0:00:53.018 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nTuesday 07 April 2026  05:47:36 +0000 (0:00:01.351)       0:00:54.369 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nTuesday 07 April 2026  05:47:37 +0000 (0:00:00.424)       0:00:54.794 *********\nchanged: [instance]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 07 April 2026  05:47:37 +0000 (0:00:00.230)       0:00:55.024 *********\nok: [instance]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 07 April 2026  05:47:37 +0000 (0:00:00.193)       0:00:55.218 *********\nok: [instance] => {\n    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 07 April 2026  05:47:37 +0000 (0:00:00.051)       0:00:55.269 *********\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=61   changed=24   unreachable=0    failed=1    skipped=15   rescued=0    ignored=2\nlocalhost                  : ok=40   changed=21   unreachable=0    failed=0    skipped=1    rescued=0    ignored=0\n\nTuesday 07 April 2026  05:47:59 +0000 (0:00:21.710)       0:01:16.980 *********\n===============================================================================\nvexxhost.containers.download_artifact : Download item ------------------ 21.71s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 5.95s\nvexxhost.atmosphere.sysctl : Configure sysctl values -------------------- 4.81s\nGenerate SSH keys for missing variables --------------------------------- 3.50s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.79s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.38s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.35s\nInstall \"dirmngr\" for GPG keyserver operations -------------------------- 1.24s\nGathering Facts --------------------------------------------------------- 1.19s\nCreate folders for workspace -------------------------------------------- 1.07s\nvexxhost.containers.package : Update state for tar ---------------------- 1.01s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 0.96s\nvexxhost.containers.download_artifact : Download item ------------------- 0.93s\nvexxhost.containers.containerd : Create folders for configuration ------- 0.91s\nvexxhost.containers.containerd : Create folders for configuration ------- 0.91s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 0.87s\nPurge \"snapd\" package --------------------------------------------------- 0.86s\nGenerate endpoint skeleton for missing variables ------------------------ 0.84s\nvexxhost.containers.download_artifact : Download item ------------------- 0.82s\nvexxhost.containers.download_artifact : Download item ------------------- 0.79s\nCRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.keycloak/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/keycloak/prepare.yml\nERROR    [keycloak > prepare] \u001b[31mExecuted: Failed\u001b[0m\nERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.keycloak/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/keycloak/prepare.yml",
                            "stdout_lines": [
                                "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 rjsonnet (1.2MiB)",
                                "Downloading ansible-core (2.1MiB)",
                                "Downloading netaddr (2.2MiB)",
                                "Downloading openstacksdk (1.7MiB)",
                                "Downloading cryptography (4.2MiB)",
                                "Downloading kubernetes (1.9MiB)",
                                "Downloading pygments (1.2MiB)",
                                "Downloading setuptools (1.1MiB)",
                                " Downloading rjsonnet",
                                "   Building pyperclip==1.9.0",
                                " 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 79 packages in 40ms",
                                "WARNING  Molecule scenarios should migrate to 'extensions/molecule'",
                                "INFO     [keycloak > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [keycloak > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [keycloak > dependency] Executing",
                                "WARNING  [keycloak > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [keycloak > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [keycloak > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [keycloak > cleanup] Executing",
                                "WARNING  [keycloak > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [keycloak > destroy] Executing",
                                "WARNING  [keycloak > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [keycloak > destroy] Executed: Successful",
                                "INFO     [keycloak > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/atmosphere/molecule/keycloak/converge.yml",
                                "INFO     [keycloak > syntax] Executed: Successful",
                                "INFO     [keycloak > create] Executing",
                                "WARNING  [keycloak > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [keycloak > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 07 April 2026  05:46:42 +0000 (0:00:00.024)       0:00:00.024 *********",
                                "[WARNING]: Platform linux on host instance is using the discovered Python",
                                "interpreter at /usr/bin/python3.10, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.17/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [instance]",
                                "",
                                "TASK [Configure short hostname] ************************************************",
                                "Tuesday 07 April 2026  05:46:43 +0000 (0:00:01.187)       0:00:01.211 *********",
                                "changed: [instance]",
                                "",
                                "TASK [Ensure hostname inside hosts file] ***************************************",
                                "Tuesday 07 April 2026  05:46:44 +0000 (0:00:00.724)       0:00:01.936 *********",
                                "[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] **************************",
                                "Tuesday 07 April 2026  05:46:44 +0000 (0:00:00.308)       0:00:02.245 *********",
                                "ok: [instance]",
                                "",
                                "TASK [Purge \"snapd\" package] ***************************************************",
                                "Tuesday 07 April 2026  05:46:45 +0000 (0:00:01.236)       0:00:03.481 *********",
                                "ok: [instance]",
                                "",
                                "PLAY [Generate workspace for Atmosphere] ***************************************",
                                "",
                                "TASK [Create folders for workspace] ********************************************",
                                "Tuesday 07 April 2026  05:46:46 +0000 (0:00:00.859)       0:00:04.341 *********",
                                "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] *****************",
                                "Tuesday 07 April 2026  05:46:47 +0000 (0:00:01.065)       0:00:05.406 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Ceph control plane configuration into a variable] *******",
                                "Tuesday 07 April 2026  05:46:48 +0000 (0:00:00.186)       0:00:05.592 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Ceph control plane values for missing variables] ****************",
                                "Tuesday 07 April 2026  05:46:48 +0000 (0:00:00.027)       0:00:05.620 *********",
                                "ok: [localhost] => (item={'key': 'ceph_fsid', 'value': 'fd4e967b-dd63-5620-8a7c-41cbcf79a215'})",
                                "ok: [localhost] => (item={'key': 'ceph_mon_public_network', 'value': '10.96.240.0/24'})",
                                "",
                                "TASK [Write new Ceph control plane configuration file to disk] *****************",
                                "Tuesday 07 April 2026  05:46:48 +0000 (0:00:00.053)       0:00:05.673 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Ceph OSD configuration for workspace] ***************************",
                                "",
                                "TASK [Ensure the Ceph OSDs configuration file exists] **************************",
                                "Tuesday 07 April 2026  05:46:48 +0000 (0:00:00.647)       0:00:06.320 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Ceph OSDs configuration into a variable] ****************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.174)       0:00:06.495 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Ceph OSDs values for missing variables] *************************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.024)       0:00:06.520 *********",
                                "ok: [localhost] => (item={'key': 'ceph_osd_devices', 'value': ['/dev/vdb', '/dev/vdc', '/dev/vdd']})",
                                "",
                                "TASK [Write new Ceph OSDs configuration file to disk] **************************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.033)       0:00:06.553 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Kubernetes configuration for workspace] *************************",
                                "",
                                "TASK [Ensure the Kubernetes configuration file exists] *************************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.347)       0:00:06.901 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Kubernetes configuration into a variable] ***************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.168)       0:00:07.069 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Kubernetes values for missing variables] ************************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.026)       0:00:07.095 *********",
                                "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] *************************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.038)       0:00:07.134 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Keepalived configuration for workspace] *************************",
                                "",
                                "TASK [Ensure the Keeaplived configuration file exists] *************************",
                                "Tuesday 07 April 2026  05:46:49 +0000 (0:00:00.343)       0:00:07.478 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Keepalived configuration into a variable] ***************",
                                "Tuesday 07 April 2026  05:46:50 +0000 (0:00:00.171)       0:00:07.650 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Keepalived values for missing variables] ************************",
                                "Tuesday 07 April 2026  05:46:50 +0000 (0:00:00.030)       0:00:07.681 *********",
                                "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] *************************",
                                "Tuesday 07 April 2026  05:46:50 +0000 (0:00:00.041)       0:00:07.722 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate endpoints for workspace] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 07 April 2026  05:46:50 +0000 (0:00:00.355)       0:00:08.078 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Ensure the endpoints file exists] ****************************************",
                                "Tuesday 07 April 2026  05:46:51 +0000 (0:00:00.697)       0:00:08.775 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current endpoints into a variable] ******************************",
                                "Tuesday 07 April 2026  05:46:51 +0000 (0:00:00.182)       0:00:08.957 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate endpoint skeleton for missing variables] ************************",
                                "Tuesday 07 April 2026  05:46:51 +0000 (0:00:00.031)       0:00:08.989 *********",
                                "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_senlin_api_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] ****************************************",
                                "Tuesday 07 April 2026  05:46:52 +0000 (0:00:00.840)       0:00:09.830 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Ensure the endpoints file exists] ****************************************",
                                "Tuesday 07 April 2026  05:46:52 +0000 (0:00:00.387)       0:00:10.217 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Neutron configuration for workspace] ****************************",
                                "",
                                "TASK [Ensure the Neutron configuration file exists] ****************************",
                                "Tuesday 07 April 2026  05:46:52 +0000 (0:00:00.268)       0:00:10.486 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Neutron configuration into a variable] ******************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.184)       0:00:10.671 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Neutron values for missing variables] ***************************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.030)       0:00:10.702 *********",
                                "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] ****************************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.043)       0:00:10.745 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate Nova configuration for workspace] *******************************",
                                "",
                                "TASK [Ensure the Nova configuration file exists] *******************************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.354)       0:00:11.100 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current Nova configuration into a variable] *********************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.212)       0:00:11.312 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate Nova values for missing variables] ******************************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.031)       0:00:11.343 *********",
                                "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] *******************************",
                                "Tuesday 07 April 2026  05:46:53 +0000 (0:00:00.040)       0:00:11.384 *********",
                                "changed: [localhost]",
                                "",
                                "PLAY [Generate secrets for workspace] ******************************************",
                                "",
                                "TASK [Ensure the secrets file exists] ******************************************",
                                "Tuesday 07 April 2026  05:46:54 +0000 (0:00:00.360)       0:00:11.744 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Load the current secrets into a variable] ********************************",
                                "Tuesday 07 April 2026  05:46:54 +0000 (0:00:00.179)       0:00:11.923 *********",
                                "ok: [localhost]",
                                "",
                                "TASK [Generate secrets for missing variables] **********************************",
                                "Tuesday 07 April 2026  05:46:54 +0000 (0:00:00.033)       0:00:11.957 *********",
                                "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_senlin_keystone_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_senlin_mariadb_password)",
                                "ok: [localhost] => (item=openstack_helm_endpoints_senlin_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] *****************************************",
                                "Tuesday 07 April 2026  05:46:54 +0000 (0:00:00.418)       0:00:12.375 *********",
                                "ok: [localhost] => (item=barbican_kek)",
                                "",
                                "TASK [Generate temporary files for generating keys for missing variables] ******",
                                "Tuesday 07 April 2026  05:46:54 +0000 (0:00:00.051)       0:00:12.427 *********",
                                "changed: [localhost] => (item=manila_ssh_key)",
                                "changed: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Generate SSH keys for missing variables] *********************************",
                                "Tuesday 07 April 2026  05:46:55 +0000 (0:00:00.415)       0:00:12.843 *********",
                                "changed: [localhost] => (item=manila_ssh_key)",
                                "changed: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Set values for SSH keys] *************************************************",
                                "Tuesday 07 April 2026  05:46:58 +0000 (0:00:03.504)       0:00:16.347 *********",
                                "ok: [localhost] => (item=manila_ssh_key)",
                                "ok: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Delete the temporary files generated for SSH keys] ***********************",
                                "Tuesday 07 April 2026  05:46:58 +0000 (0:00:00.059)       0:00:16.407 *********",
                                "changed: [localhost] => (item=manila_ssh_key)",
                                "changed: [localhost] => (item=nova_ssh_key)",
                                "",
                                "TASK [Write new secrets file to disk] ******************************************",
                                "Tuesday 07 April 2026  05:46:59 +0000 (0:00:00.376)       0:00:16.783 *********",
                                "changed: [localhost]",
                                "",
                                "TASK [Encrypt secrets file with Vault password] ********************************",
                                "Tuesday 07 April 2026  05:46:59 +0000 (0:00:00.368)       0:00:17.151 *********",
                                "skipping: [localhost]",
                                "",
                                "PLAY [all] *********************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 07 April 2026  05:46:59 +0000 (0:00:00.047)       0:00:17.199 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.atmosphere.sysctl : Configure sysctl values] ********************",
                                "Tuesday 07 April 2026  05:47:00 +0000 (0:00:00.722)       0:00:17.922 *********",
                                "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] ***",
                                "Tuesday 07 April 2026  05:47:05 +0000 (0:00:04.808)       0:00:22.730 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.atmosphere.ethtool : Install persistent \"ethtool\" tuning] *******",
                                "Tuesday 07 April 2026  05:47:05 +0000 (0:00:00.198)       0:00:22.928 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.atmosphere.ethtool : Run \"ethtool\" tuning] **********************",
                                "Tuesday 07 April 2026  05:47:05 +0000 (0:00:00.489)       0:00:23.417 *********",
                                "ok: [instance]",
                                "",
                                "TASK [Set a fact with the \"atmosphere_images\" for other plays] *****************",
                                "Tuesday 07 April 2026  05:47:06 +0000 (0:00:00.311)       0:00:23.729 *********",
                                "ok: [instance]",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 07 April 2026  05:47:06 +0000 (0:00:00.137)       0:00:23.866 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Tuesday 07 April 2026  05:47:07 +0000 (0:00:00.707)       0:00:24.574 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Tuesday 07 April 2026  05:47:07 +0000 (0:00:00.213)       0:00:24.787 *********",
                                "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] ****",
                                "Tuesday 07 April 2026  05:47:08 +0000 (0:00:00.866)       0:00:25.653 *********",
                                "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] *********",
                                "Tuesday 07 April 2026  05:47:08 +0000 (0:00:00.595)       0:00:26.249 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Tuesday 07 April 2026  05:47:08 +0000 (0:00:00.191)       0:00:26.440 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Tuesday 07 April 2026  05:47:09 +0000 (0:00:00.185)       0:00:26.626 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Tuesday 07 April 2026  05:47:09 +0000 (0:00:00.034)       0:00:26.661 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Tuesday 07 April 2026  05:47:09 +0000 (0:00:00.048)       0:00:26.709 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Tuesday 07 April 2026  05:47:09 +0000 (0:00:00.551)       0:00:27.261 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Tuesday 07 April 2026  05:47:09 +0000 (0:00:00.205)       0:00:27.467 *********",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 07 April 2026  05:47:10 +0000 (0:00:00.057)       0:00:27.524 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 07 April 2026  05:47:10 +0000 (0:00:00.706)       0:00:28.230 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 07 April 2026  05:47:10 +0000 (0:00:00.213)       0:00:28.444 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Tuesday 07 April 2026  05:47:10 +0000 (0:00:00.039)       0:00:28.484 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:11 +0000 (0:00:00.206)       0:00:28.691 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:11 +0000 (0:00:00.074)       0:00:28.765 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 07 April 2026  05:47:11 +0000 (0:00:00.678)       0:00:29.444 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 07 April 2026  05:47:12 +0000 (0:00:00.047)       0:00:29.492 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 07 April 2026  05:47:12 +0000 (0:00:00.198)       0:00:29.690 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:13 +0000 (0:00:01.014)       0:00:30.704 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.0/containerd-2.2.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:13 +0000 (0:00:00.054)       0:00:30.759 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 07 April 2026  05:47:14 +0000 (0:00:00.818)       0:00:31.578 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 07 April 2026  05:47:16 +0000 (0:00:02.787)       0:00:34.366 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 07 April 2026  05:47:16 +0000 (0:00:00.024)       0:00:34.390 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 07 April 2026  05:47:16 +0000 (0:00:00.036)       0:00:34.427 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 07 April 2026  05:47:16 +0000 (0:00:00.032)       0:00:34.460 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 07 April 2026  05:47:22 +0000 (0:00:05.950)       0:00:40.411 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 07 April 2026  05:47:23 +0000 (0:00:00.457)       0:00:40.869 *********",
                                "changed: [instance] => (item={'path': '/etc/containerd'})",
                                "changed: [instance] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "changed: [instance] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "changed: [instance] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "changed: [instance] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Tuesday 07 April 2026  05:47:24 +0000 (0:00:00.911)       0:00:41.780 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 07 April 2026  05:47:24 +0000 (0:00:00.486)       0:00:42.267 *********",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Tuesday 07 April 2026  05:47:24 +0000 (0:00:00.007)       0:00:42.274 *********",
                                "changed: [instance]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Tuesday 07 April 2026  05:47:25 +0000 (0:00:00.620)       0:00:42.895 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 07 April 2026  05:47:26 +0000 (0:00:00.610)       0:00:43.505 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Tuesday 07 April 2026  05:47:26 +0000 (0:00:00.528)       0:00:44.034 *********",
                                "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] ***",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.529)       0:00:44.563 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.029)       0:00:44.593 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.039)       0:00:44.632 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.031)       0:00:44.664 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.030)       0:00:44.694 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.033)       0:00:44.727 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.190)       0:00:44.918 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:27 +0000 (0:00:00.038)       0:00:44.957 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 07 April 2026  05:47:28 +0000 (0:00:00.931)       0:00:45.888 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 07 April 2026  05:47:28 +0000 (0:00:00.030)       0:00:45.918 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:28 +0000 (0:00:00.191)       0:00:46.110 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:28 +0000 (0:00:00.032)       0:00:46.143 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 07 April 2026  05:47:29 +0000 (0:00:00.788)       0:00:46.932 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 07 April 2026  05:47:29 +0000 (0:00:00.043)       0:00:46.975 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 07 April 2026  05:47:29 +0000 (0:00:00.032)       0:00:47.007 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 07 April 2026  05:47:29 +0000 (0:00:00.029)       0:00:47.037 *********",
                                "skipping: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 07 April 2026  05:47:29 +0000 (0:00:00.028)       0:00:47.065 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 07 April 2026  05:47:30 +0000 (0:00:00.963)       0:00:48.029 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 07 April 2026  05:47:30 +0000 (0:00:00.419)       0:00:48.449 *********",
                                "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] **********",
                                "Tuesday 07 April 2026  05:47:31 +0000 (0:00:00.910)       0:00:49.359 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 07 April 2026  05:47:32 +0000 (0:00:00.491)       0:00:49.850 *********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 07 April 2026  05:47:32 +0000 (0:00:00.007)       0:00:49.858 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 07 April 2026  05:47:32 +0000 (0:00:00.329)       0:00:50.187 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:32 +0000 (0:00:00.203)       0:00:50.390 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:32 +0000 (0:00:00.057)       0:00:50.448 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 07 April 2026  05:47:33 +0000 (0:00:00.583)       0:00:51.032 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:34 +0000 (0:00:01.383)       0:00:52.415 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/critest-v1.34.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:34 +0000 (0:00:00.047)       0:00:52.463 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 07 April 2026  05:47:35 +0000 (0:00:00.554)       0:00:53.018 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Tuesday 07 April 2026  05:47:36 +0000 (0:00:01.351)       0:00:54.369 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Tuesday 07 April 2026  05:47:37 +0000 (0:00:00.424)       0:00:54.794 *********",
                                "changed: [instance]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 07 April 2026  05:47:37 +0000 (0:00:00.230)       0:00:55.024 *********",
                                "ok: [instance]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 07 April 2026  05:47:37 +0000 (0:00:00.193)       0:00:55.218 *********",
                                "ok: [instance] => {",
                                "    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 07 April 2026  05:47:37 +0000 (0:00:00.051)       0:00:55.269 *********",
                                "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=61   changed=24   unreachable=0    failed=1    skipped=15   rescued=0    ignored=2",
                                "localhost                  : ok=40   changed=21   unreachable=0    failed=0    skipped=1    rescued=0    ignored=0",
                                "",
                                "Tuesday 07 April 2026  05:47:59 +0000 (0:00:21.710)       0:01:16.980 *********",
                                "===============================================================================",
                                "vexxhost.containers.download_artifact : Download item ------------------ 21.71s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 5.95s",
                                "vexxhost.atmosphere.sysctl : Configure sysctl values -------------------- 4.81s",
                                "Generate SSH keys for missing variables --------------------------------- 3.50s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.79s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.38s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.35s",
                                "Install \"dirmngr\" for GPG keyserver operations -------------------------- 1.24s",
                                "Gathering Facts --------------------------------------------------------- 1.19s",
                                "Create folders for workspace -------------------------------------------- 1.07s",
                                "vexxhost.containers.package : Update state for tar ---------------------- 1.01s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 0.96s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 0.93s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 0.91s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 0.91s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 0.87s",
                                "Purge \"snapd\" package --------------------------------------------------- 0.86s",
                                "Generate endpoint skeleton for missing variables ------------------------ 0.84s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 0.82s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 0.79s",
                                "CRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.keycloak/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/keycloak/prepare.yml",
                                "ERROR    [keycloak > prepare] \u001b[31mExecuted: Failed\u001b[0m",
                                "ERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.v9Wo.keycloak/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/atmosphere/inventory.yaml /home/zuul/src/github.com/vexxhost/atmosphere/molecule/keycloak/prepare.yml"
                            ],
                            "zuul_log_id": "0242ac17-0011-2ded-2e21-000000000006-1-instance"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:00.014413Z",
                            "start": "2026-04-07T05:45:58.370982Z"
                        },
                        "id": "0242ac17-0011-2ded-2e21-000000000006",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "instance": {
            "changed": 2,
            "failures": 1,
            "ignored": 0,
            "ok": 2,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "stable/zed",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/atmosphere/test-playbooks/molecule/post.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-04-07T05:48:11.150605Z",
                    "start": "2026-04-07T05:48:00.727860Z"
                },
                "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:01.107278Z",
                            "start": "2026-04-07T05:48:00.742893Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.063022",
                            "end": "2026-04-07 05:48:01.515957",
                            "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-0011-301f-1461-00000000000d-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:01.452935",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "+ systemd-cgls --full --all --no-pager\n+ ip addr\n+ ip route\n+ lsblk\n+ mount\n+ docker images\n/bin/bash: line 7: docker: command not found\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/bin/bash: line 11: docker: command not found\n+ '[' '!' -z '' ']'",
                            "stdout_lines": [
                                "+ systemd-cgls --full --all --no-pager",
                                "+ ip addr",
                                "+ ip route",
                                "+ lsblk",
                                "+ mount",
                                "+ docker images",
                                "/bin/bash: line 7: docker: command not found",
                                "+ 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",
                                "/bin/bash: line 11: docker: command not found",
                                "+ '[' '!' -z '' ']'"
                            ],
                            "zuul_log_id": "0242ac17-0011-301f-1461-00000000000d-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:01.650556Z",
                            "start": "2026-04-07T05:48:01.133663Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.74:/tmp/logs/system /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/tmp/logs/system",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "created directory /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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-0011-301f-1461-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:02.268119Z",
                            "start": "2026-04-07T05:48:01.657713Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:02.685260Z",
                            "start": "2026-04-07T05:48:02.277311Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.072003",
                            "end": "2026-04-07 05:48:02.964840",
                            "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-0011-301f-1461-000000000014-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:02.892837",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0407 05:48:02.954885    3445 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\nE0407 05:48:02.955631    3445 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\nE0407 05:48:02.957419    3445 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\nE0407 05:48:02.958357    3445 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\nE0407 05:48:02.960143    3445 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": [
                                "E0407 05:48:02.954885    3445 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",
                                "E0407 05:48:02.955631    3445 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",
                                "E0407 05:48:02.957419    3445 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",
                                "E0407 05:48:02.958357    3445 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",
                                "E0407 05:48:02.960143    3445 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-0011-301f-1461-000000000014-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:03.229400Z",
                            "start": "2026-04-07T05:48:02.711270Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.74:/tmp/logs/helm /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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-0011-301f-1461-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:04.024915Z",
                            "start": "2026-04-07T05:48:03.236418Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:04.232829Z",
                            "start": "2026-04-07T05:48:04.034618Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.205713",
                            "end": "2026-04-07 05:48:04.641935",
                            "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-0011-301f-1461-00000000001a-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:04.436222",
                            "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\nE0407 05:48:04.502338    3495 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\nE0407 05:48:04.503039    3495 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\nE0407 05:48:04.504814    3495 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\nE0407 05:48:04.505241    3495 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\nE0407 05:48:04.506622    3495 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\nE0407 05:48:04.516327    3497 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\nE0407 05:48:04.516890    3497 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\nE0407 05:48:04.518630    3497 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\nE0407 05:48:04.519202    3497 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\nE0407 05:48:04.520705    3497 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\nE0407 05:48:04.568413    3518 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\nE0407 05:48:04.569268    3518 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\nE0407 05:48:04.572230    3518 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\nE0407 05:48:04.573341    3518 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\nE0407 05:48:04.574063    3518 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\nE0407 05:48:04.583640    3527 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\nE0407 05:48:04.584226    3527 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\nE0407 05:48:04.585790    3527 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\nE0407 05:48:04.586224    3527 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\nE0407 05:48:04.587891    3527 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?\nE0407 05:48:04.631453    3543 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\nE0407 05:48:04.632316    3543 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\nE0407 05:48:04.634103    3543 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\nE0407 05:48:04.634982    3543 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\nE0407 05:48:04.636804    3543 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",
                                "E0407 05:48:04.502338    3495 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",
                                "E0407 05:48:04.503039    3495 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",
                                "E0407 05:48:04.504814    3495 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",
                                "E0407 05:48:04.505241    3495 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",
                                "E0407 05:48:04.506622    3495 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",
                                "E0407 05:48:04.516327    3497 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",
                                "E0407 05:48:04.516890    3497 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",
                                "E0407 05:48:04.518630    3497 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",
                                "E0407 05:48:04.519202    3497 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",
                                "E0407 05:48:04.520705    3497 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",
                                "E0407 05:48:04.568413    3518 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",
                                "E0407 05:48:04.569268    3518 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",
                                "E0407 05:48:04.572230    3518 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",
                                "E0407 05:48:04.573341    3518 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",
                                "E0407 05:48:04.574063    3518 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",
                                "E0407 05:48:04.583640    3527 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",
                                "E0407 05:48:04.584226    3527 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",
                                "E0407 05:48:04.585790    3527 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",
                                "E0407 05:48:04.586224    3527 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",
                                "E0407 05:48:04.587891    3527 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?",
                                "E0407 05:48:04.631453    3543 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",
                                "E0407 05:48:04.632316    3543 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",
                                "E0407 05:48:04.634103    3543 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",
                                "E0407 05:48:04.634982    3543 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",
                                "E0407 05:48:04.636804    3543 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-0011-301f-1461-00000000001a-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:04.784283Z",
                            "start": "2026-04-07T05:48:04.254709Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:04.996420Z",
                            "start": "2026-04-07T05:48:04.789101Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.065370",
                            "end": "2026-04-07 05:48:05.299114",
                            "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-0011-301f-1461-00000000001c-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:05.233744",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args valuewarning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\n\nE0407 05:48:05.288501    3574 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\nE0407 05:48:05.289223    3574 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\nE0407 05:48:05.290968    3574 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\nE0407 05:48:05.291608    3574 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\nE0407 05:48:05.293211    3574 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: xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args valuewarning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "",
                                "E0407 05:48:05.288501    3574 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",
                                "E0407 05:48:05.289223    3574 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",
                                "E0407 05:48:05.290968    3574 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",
                                "E0407 05:48:05.291608    3574 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",
                                "E0407 05:48:05.293211    3574 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-0011-301f-1461-00000000001c-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:05.573455Z",
                            "start": "2026-04-07T05:48:05.053206Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.74:/tmp/logs/objects /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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-0011-301f-1461-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:06.062144Z",
                            "start": "2026-04-07T05:48:05.581328Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:06.268355Z",
                            "start": "2026-04-07T05:48:06.070849Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:06.472903Z",
                            "start": "2026-04-07T05:48:06.274841Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.080434",
                            "end": "2026-04-07 05:48:06.761788",
                            "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-0011-301f-1461-000000000023-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:06.681354",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0407 05:48:06.750101    3624 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\nE0407 05:48:06.752204    3624 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\nE0407 05:48:06.753109    3624 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\nE0407 05:48:06.754872    3624 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\nE0407 05:48:06.755392    3624 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": [
                                "E0407 05:48:06.750101    3624 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",
                                "E0407 05:48:06.752204    3624 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",
                                "E0407 05:48:06.753109    3624 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",
                                "E0407 05:48:06.754872    3624 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",
                                "E0407 05:48:06.755392    3624 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-0011-301f-1461-000000000023-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:07.014747Z",
                            "start": "2026-04-07T05:48:06.496552Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.74:/tmp/logs/pod-logs /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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-0011-301f-1461-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:07.527081Z",
                            "start": "2026-04-07T05:48:07.020767Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:07.755131Z",
                            "start": "2026-04-07T05:48:07.538088Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.067144",
                            "end": "2026-04-07 05:48:08.031916",
                            "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-0011-301f-1461-000000000029-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:07.964772",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0407 05:48:08.022533    3666 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\nE0407 05:48:08.023206    3666 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\nE0407 05:48:08.025003    3666 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\nE0407 05:48:08.025546    3666 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\nE0407 05:48:08.027185    3666 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": [
                                "E0407 05:48:08.022533    3666 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",
                                "E0407 05:48:08.023206    3666 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",
                                "E0407 05:48:08.025003    3666 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",
                                "E0407 05:48:08.025546    3666 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",
                                "E0407 05:48:08.027185    3666 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-0011-301f-1461-000000000029-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:08.310487Z",
                            "start": "2026-04-07T05:48:07.778183Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.065996",
                            "end": "2026-04-07 05:48:08.601115",
                            "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-0011-301f-1461-00000000002a-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:08.535119",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0407 05:48:08.589722    3688 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\nE0407 05:48:08.590499    3688 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\nE0407 05:48:08.592281    3688 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\nE0407 05:48:08.592961    3688 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\nE0407 05:48:08.594991    3688 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": [
                                "E0407 05:48:08.589722    3688 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",
                                "E0407 05:48:08.590499    3688 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",
                                "E0407 05:48:08.592281    3688 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",
                                "E0407 05:48:08.592961    3688 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",
                                "E0407 05:48:08.594991    3688 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-0011-301f-1461-00000000002a-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:08.852228Z",
                            "start": "2026-04-07T05:48:08.334802Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.069699",
                            "end": "2026-04-07 05:48:09.154444",
                            "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-0011-301f-1461-00000000002b-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-04-07 05:48:09.084745",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0407 05:48:09.144710    3711 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\nE0407 05:48:09.145430    3711 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\nE0407 05:48:09.146920    3711 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\nE0407 05:48:09.147317    3711 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\nE0407 05:48:09.148782    3711 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": [
                                "E0407 05:48:09.144710    3711 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",
                                "E0407 05:48:09.145430    3711 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",
                                "E0407 05:48:09.146920    3711 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",
                                "E0407 05:48:09.147317    3711 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",
                                "E0407 05:48:09.148782    3711 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-0011-301f-1461-00000000002b-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:09.403773Z",
                            "start": "2026-04-07T05:48:08.886784Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.74:/tmp/logs/prometheus /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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-0011-301f-1461-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:09.910506Z",
                            "start": "2026-04-07T05:48:09.408646Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-0011-301f-1461-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:10.117237Z",
                            "start": "2026-04-07T05:48:09.919041Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.009274",
                            "end": "2026-04-07 05:48:10.346921",
                            "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-0011-301f-1461-000000000031-1-instance",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-04-07 05:48:10.337647",
                            "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-0011-301f-1461-000000000031-1-instance"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-301f-1461-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:10.661045Z",
                            "start": "2026-04-07T05:48:10.139830Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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.74:/tmp/logs/selenium /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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-0011-301f-1461-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:11.150605Z",
                            "start": "2026-04-07T05:48:10.668991Z"
                        },
                        "id": "0242ac17-0011-301f-1461-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-04-07T05:48:15.763055Z",
                    "start": "2026-04-07T05:48:11.908785Z"
                },
                "id": "0242ac17-0011-3428-62c6-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-0011-3428-62c6-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:11.966661Z",
                            "start": "2026-04-07T05:48:11.921162Z"
                        },
                        "id": "0242ac17-0011-3428-62c6-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "instance": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-3428-62c6-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:12.019170Z",
                            "start": "2026-04-07T05:48:11.976191Z"
                        },
                        "id": "0242ac17-0011-3428-62c6-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/3aa0353696cd461ba80d22e6850d92e5/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-3428-62c6-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:12.869667Z",
                            "start": "2026-04-07T05:48:12.024837Z"
                        },
                        "id": "0242ac17-0011-3428-62c6-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.74:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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.74:/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/3aa0353696cd461ba80d22e6850d92e5/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-3428-62c6-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:15.004942Z",
                            "start": "2026-04-07T05:48:12.880753Z"
                        },
                        "id": "0242ac17-0011-3428-62c6-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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/artifacts/* /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.022813",
                                    "end": "2026-04-07 05:48:15.447226",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/artifacts/* /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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-04-07 05:48:15.424413",
                                    "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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/docs/* /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007647",
                                    "end": "2026-04-07 05:48:15.714836",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/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/3aa0353696cd461ba80d22e6850d92e5/work/docs/* /var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/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-04-07 05:48:15.707189",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-3428-62c6-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:15.763055Z",
                            "start": "2026-04-07T05:48:15.021267Z"
                        },
                        "id": "0242ac17-0011-3428-62c6-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-04-07T05:48:16.230328Z",
                    "start": "2026-04-07T05:48:15.769618Z"
                },
                "id": "0242ac17-0011-3428-62c6-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDW1yT0DdIxxvotJwrpofDRT+GxTgyc+oDsbXmFIxCFf7d9QUHfxCUVpVwRHcqhoWtL5TbLEsJa41KoZar9uWOyXlhgbjy9W+L7EljvkfW+dWiFQFjJckwEOlCfuxZD3jMspCaJkP0VzoAaQG8hG7uEs7ptoU0jyFUaQStGT29Eo7rmeZaO8+eglLvu2W+cqFEjVrEK/Y10BLCiyLNOJWNYRPdkJnBbJCPkPLSIiciCGGRCls9coLV6ABfdElvbrycm11c4HBvQn8YDS3qEQs2zG24f8nTEoTONltPBR1aeVrr0C/eVXF/C/64Bnpf+UvSgfgIPtYia51LsLF+gXFvz20ZhQ0re+aPyFMMmOMHRlbkyG7NMgpJklM66vy0Z2en4HhVWH/UTE+nFPoudNVj/Q0m1O5U6dZMLkMJ/P8z4tYnoEb03ypo5a4fYq6pus1rMEL7vEsx2MNv37S0GDfqoiN/ROjnWO/XW3Fm56lxNyXwzRyiv/1XMbw6G/IQHryM= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDW1yT0DdIxxvotJwrpofDRT+GxTgyc+oDsbXmFIxCFf7d9QUHfxCUVpVwRHcqhoWtL5TbLEsJa41KoZar9uWOyXlhgbjy9W+L7EljvkfW+dWiFQFjJckwEOlCfuxZD3jMspCaJkP0VzoAaQG8hG7uEs7ptoU0jyFUaQStGT29Eo7rmeZaO8+eglLvu2W+cqFEjVrEK/Y10BLCiyLNOJWNYRPdkJnBbJCPkPLSIiciCGGRCls9coLV6ABfdElvbrycm11c4HBvQn8YDS3qEQs2zG24f8nTEoTONltPBR1aeVrr0C/eVXF/C/64Bnpf+UvSgfgIPtYia51LsLF+gXFvz20ZhQ0re+aPyFMMmOMHRlbkyG7NMgpJklM66vy0Z2en4HhVWH/UTE+nFPoudNVj/Q0m1O5U6dZMLkMJ/P8z4tYnoEb03ypo5a4fYq6pus1rMEL7vEsx2MNv37S0GDfqoiN/ROjnWO/XW3Fm56lxNyXwzRyiv/1XMbw6G/IQHryM= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "absent",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-3428-62c6-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/3aa0353696cd461ba80d22e6850d92e5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-04-07T05:48:16.230328Z",
                            "start": "2026-04-07T05:48:15.775527Z"
                        },
                        "id": "0242ac17-0011-3428-62c6-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
}
]
