[
{
    "branch": "master",
    "index": "0",
    "phase": "pre",
    "playbook": "review.rdoproject.org/config/playbooks/base-minimal/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:02:11.819961Z",
                    "start": "2026-06-09T13:02:08.789171Z"
                },
                "id": "0a580a2a-001b-8977-f1c1-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": "(hd0,gpt3)/vmlinuz-5.14.0-427.13.1.el9_4.x86_64",
                                    "console": "ttyS0,115200n8",
                                    "crashkernel": "1G-4G:192M,4G-64G:256M,64G-:512M",
                                    "net.ifnames": "0",
                                    "no_timer_check": true,
                                    "root": "UUID=2fb0abc1-9d08-48bc-9719-108d4ed14685"
                                },
                                "ansible_date_time": {
                                    "date": "2026-06-09",
                                    "day": "09",
                                    "epoch": "1781010129",
                                    "epoch_int": "1781010129",
                                    "hour": "13",
                                    "iso8601": "2026-06-09T13:02:09Z",
                                    "iso8601_basic": "20260609T130209500478",
                                    "iso8601_basic_short": "20260609T130209",
                                    "iso8601_micro": "2026-06-09T13:02:09.500478Z",
                                    "minute": "02",
                                    "month": "06",
                                    "second": "09",
                                    "time": "13:02:09",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "23",
                                    "year": "2026"
                                },
                                "ansible_devices": {},
                                "ansible_distribution": "Redhat",
                                "ansible_distribution_major_version": "9",
                                "ansible_distribution_release": "Plow",
                                "ansible_distribution_version": "9.7",
                                "ansible_dns": {
                                    "nameservers": [
                                        "10.43.0.10"
                                    ],
                                    "options": {
                                        "ndots": "5"
                                    },
                                    "search": [
                                        "sf.svc.cluster.local",
                                        "svc.cluster.local",
                                        "cluster.local",
                                        "softwarefactory-project.io"
                                    ]
                                },
                                "ansible_domain": "zuul-executor-headless.sf.svc.cluster.local",
                                "ansible_effective_group_id": 0,
                                "ansible_effective_user_id": 1000,
                                "ansible_env": {
                                    "ANSIBLE_CONFIG": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/ansible/pre_playbook_0/ansible.cfg",
                                    "FLUENT_BIT_PORT": "tcp://10.43.174.239:2020",
                                    "FLUENT_BIT_PORT_2020_TCP": "tcp://10.43.174.239:2020",
                                    "FLUENT_BIT_PORT_2020_TCP_ADDR": "10.43.174.239",
                                    "FLUENT_BIT_PORT_2020_TCP_PORT": "2020",
                                    "FLUENT_BIT_PORT_2020_TCP_PROTO": "tcp",
                                    "FLUENT_BIT_PORT_24224_TCP": "tcp://10.43.174.239:24224",
                                    "FLUENT_BIT_PORT_24224_TCP_ADDR": "10.43.174.239",
                                    "FLUENT_BIT_PORT_24224_TCP_PORT": "24224",
                                    "FLUENT_BIT_PORT_24224_TCP_PROTO": "tcp",
                                    "FLUENT_BIT_PORT_5140_TCP": "tcp://10.43.174.239:5140",
                                    "FLUENT_BIT_PORT_5140_TCP_ADDR": "10.43.174.239",
                                    "FLUENT_BIT_PORT_5140_TCP_PORT": "5140",
                                    "FLUENT_BIT_PORT_5140_TCP_PROTO": "tcp",
                                    "FLUENT_BIT_SERVICE_HOST": "10.43.174.239",
                                    "FLUENT_BIT_SERVICE_PORT": "2020",
                                    "FLUENT_BIT_SERVICE_PORT_FB_FWD_INPUT": "24224",
                                    "FLUENT_BIT_SERVICE_PORT_FB_HTTP_INPUT": "5140",
                                    "FLUENT_BIT_SERVICE_PORT_HTTP": "2020",
                                    "HOME": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work",
                                    "HOSTNAME": "zuul-executor-0",
                                    "K8S_COMPONENT": "zuul",
                                    "K8S_CONTAINER": "zuul-executor",
                                    "K8S_LABELS_APP": "sf",
                                    "K8S_LABELS_RUN": "zuul-executor",
                                    "K8S_NAMESPACE": "sf",
                                    "K8S_NODENAME": "microshift-ze01.softwarefactory-project.io",
                                    "K8S_PODIP": "10.42.0.27",
                                    "K8S_PODNAME": "zuul-executor-0",
                                    "KUBECONFIG": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/kube/config",
                                    "KUBERNETES_PORT": "tcp://10.43.0.1:443",
                                    "KUBERNETES_PORT_443_TCP": "tcp://10.43.0.1:443",
                                    "KUBERNETES_PORT_443_TCP_ADDR": "10.43.0.1",
                                    "KUBERNETES_PORT_443_TCP_PORT": "443",
                                    "KUBERNETES_PORT_443_TCP_PROTO": "tcp",
                                    "KUBERNETES_SERVICE_HOST": "10.43.0.1",
                                    "KUBERNETES_SERVICE_PORT": "443",
                                    "KUBERNETES_SERVICE_PORT_HTTPS": "443",
                                    "LC_CTYPE": "C.UTF-8",
                                    "NSS_SDB_USE_CACHE": "no",
                                    "PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                                    "PWD": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_0/review.rdoproject.org/config/playbooks/base-minimal",
                                    "PYTHONPATH": "/var/lib/zuul/ansible/9",
                                    "REQUESTS_CA_BUNDLE": "/etc/ssl/certs/ca-bundle.crt",
                                    "SHLVL": "1",
                                    "SSH_AGENT_PID": "3330515",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-XXXXXXOnPtsk/agent.3330514",
                                    "TERM": "xterm",
                                    "TMP": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/tmp",
                                    "XDG_CACHE_HOME": "/var/cache/dhall",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824",
                                    "_": "/usr/lib/zuul/ansible/9/bin/python",
                                    "container": "oci"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "zuul-executor-0.zuul-executor-headless.sf.svc.cluster.local",
                                "ansible_hostname": "zuul-executor-0",
                                "ansible_hostnqn": "",
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "5.14.0-427.13.1.el9_4.x86_64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Wed Apr 10 10:29:16 EDT 2024",
                                "ansible_loadavg": {
                                    "15m": 1.42,
                                    "1m": 2.82,
                                    "5m": 1.73
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 831,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 8558,
                                        "used": 7178
                                    },
                                    "real": {
                                        "free": 831,
                                        "total": 15736,
                                        "used": 14905
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 15736,
                                "ansible_mounts": [
                                    {
                                        "block_available": 20558668,
                                        "block_size": 4096,
                                        "block_total": 25884155,
                                        "block_used": 5325487,
                                        "device": "/dev/vda4",
                                        "fstype": "xfs",
                                        "inode_available": 51132709,
                                        "inode_total": 51801024,
                                        "inode_used": 668315,
                                        "mount": "/etc/hosts",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 84208304128,
                                        "size_total": 106021498880,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work",
                                        "options": "rw,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 20558668,
                                        "block_size": 4096,
                                        "block_total": 25884155,
                                        "block_used": 5325487,
                                        "device": "/dev/vda4",
                                        "fstype": "xfs",
                                        "inode_available": 51132709,
                                        "inode_total": 51801024,
                                        "inode_used": 668315,
                                        "mount": "/etc/pki/ca-trust/extracted",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 84208304128,
                                        "size_total": 106021498880,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/ansible",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/kube",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/ansible/pre_playbook_0",
                                        "options": "ro,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 5157399,
                                        "block_size": 4096,
                                        "block_total": 7847936,
                                        "block_used": 2690537,
                                        "device": "/dev/topolvm/fca70fb6-33c3-4b13-ac96-46f2db9c32d6",
                                        "fstype": "xfs",
                                        "inode_available": 15277867,
                                        "inode_total": 15728640,
                                        "inode_used": 450773,
                                        "mount": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/.ansible",
                                        "options": "rw,seclabel,nosuid,nodev,relatime,nouuid,attr2,inode64,logbufs=8,logbsize=32k,noquota,bind",
                                        "size_available": 21124706304,
                                        "size_total": 32145145856,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "zuul-executor-0",
                                "ansible_os_family": "Redhat",
                                "ansible_pkg_mgr": "unknown",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "(hd0,gpt3)/vmlinuz-5.14.0-427.13.1.el9_4.x86_64",
                                    "console": [
                                        "tty0",
                                        "ttyS0,115200n8"
                                    ],
                                    "crashkernel": "1G-4G:192M,4G-64G:256M,64G-:512M",
                                    "net.ifnames": "0",
                                    "no_timer_check": true,
                                    "root": "UUID=2fb0abc1-9d08-48bc-9719-108d4ed14685"
                                },
                                "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"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 8,
                                "ansible_processor_nproc": 8,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 8,
                                "ansible_product_name": "NA",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "NA",
                                "ansible_python": {
                                    "executable": "/usr/lib/zuul/ansible/9/bin/python",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 13,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        13,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.13",
                                "ansible_real_group_id": 0,
                                "ansible_real_user_id": 1000,
                                "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": [
                                    ""
                                ],
                                "ansible_system_capabilities_enforced": "True",
                                "ansible_system_vendor": "NA",
                                "ansible_uptime_seconds": 9742285,
                                "ansible_user_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work",
                                "ansible_user_gecos": "1000 user",
                                "ansible_user_gid": 0,
                                "ansible_user_id": "1000",
                                "ansible_user_shell": "/sbin/nologin",
                                "ansible_user_uid": 1000,
                                "ansible_userspace_architecture": "x86_64",
                                "ansible_userspace_bits": "64",
                                "ansible_virtualization_role": "guest",
                                "ansible_virtualization_tech_guest": [
                                    "container"
                                ],
                                "ansible_virtualization_tech_host": [
                                    "kvm"
                                ],
                                "ansible_virtualization_type": "container",
                                "gather_subset": [
                                    "all"
                                ],
                                "module_setup": true
                            },
                            "changed": false,
                            "deprecations": [],
                            "warnings": []
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:09.848396Z",
                            "start": "2026-06-09T13:02:08.796899Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000032",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "mode": "0755",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "mode": "02755",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "1000",
                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-000000000006",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:10.422087Z",
                            "start": "2026-06-09T13:02:09.856357Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000008",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "a5c77604c83d1fda2d407e2568bb26f5e5919d07",
                            "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "a5c77604c83d1fda2d407e2568bb26f5e5919d07",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/.ansible/tmp/ansible-tmp-1781010130.476086-53-261625878865676/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "37d8bf92a75367785c2de40d5a09336e",
                            "mode": "0644",
                            "owner": "1000",
                            "size": 30405,
                            "src": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/.ansible/tmp/ansible-tmp-1781010130.476086-53-261625878865676/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-000000000006",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:11.529773Z",
                            "start": "2026-06-09T13:02:10.426476Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000009",
                        "name": "Copy ansible inventory to logs dir"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000000b",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:11.579215Z",
                            "start": "2026-06-09T13:02:11.538849Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000000d",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "3ba/rdoproject.org/3baddb9c77f44612873b572b5ad8a5f5"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-000000000060",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:11.654385Z",
                            "start": "2026-06-09T13:02:11.603664Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000062",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.18\nJob: cifmw-architecture-validate-hci\nPipeline: github-check\nExecutor: 38.102.83.47\nTriggered by: https://github.com/openstack-k8s-operators/ci-framework/pull/3773\nLog URL (when completed): https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/logs/3ba/rdoproject.org/3baddb9c77f44612873b572b5ad8a5f5/\nEvent ID: 25250a60-6403-11f1-9222-618005b0291a\n"
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000000b",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:11.715284Z",
                            "start": "2026-06-09T13:02:11.663785Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000000e",
                        "name": "Print job information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": false,
                                    "failed": false,
                                    "msg": "# Node Information\nInventory Hostname: controller\nHostname: np0000068575\nUsername: zuul\nDistro: CentOS 9\nProvider: vexxhost-nodepool-tripleo\nRegion: RegionOne\nLabel: cloud-centos-9-stream-tripleo\nProduct Name: OpenStack Nova\nInterface IP: 38.102.83.189\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000000b",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:11.819961Z",
                            "start": "2026-06-09T13:02:11.719807Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000000f",
                        "name": "Print node information"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:02:22.080879Z",
                    "start": "2026-06-09T13:02:11.825301Z"
                },
                "id": "0a580a2a-001b-8977-f1c1-000000000011",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "setup",
                            "ansible_facts": {
                                "ansible_all_ipv4_addresses": [
                                    "38.102.83.189"
                                ],
                                "ansible_all_ipv6_addresses": [
                                    "fe80::f816:3eff:fe63:399d"
                                ],
                                "ansible_apparmor": {
                                    "status": "disabled"
                                },
                                "ansible_architecture": "x86_64",
                                "ansible_cmdline": {
                                    "BOOT_IMAGE": "(hd0,msdos1)/boot/vmlinuz-5.14.0-710.el9.x86_64",
                                    "console": "ttyS0,115200n8",
                                    "crashkernel": "1G-2G:192M,2G-64G:256M,64G-:512M",
                                    "net.ifnames": "0",
                                    "no_timer_check": true,
                                    "ro": true,
                                    "root": "UUID=2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                },
                                "ansible_date_time": {
                                    "date": "2026-06-09",
                                    "day": "09",
                                    "epoch": "1781010132",
                                    "epoch_int": "1781010132",
                                    "hour": "09",
                                    "iso8601": "2026-06-09T13:02:12Z",
                                    "iso8601_basic": "20260609T090212150073",
                                    "iso8601_basic_short": "20260609T090212",
                                    "iso8601_micro": "2026-06-09T13:02:12.150073Z",
                                    "minute": "02",
                                    "month": "06",
                                    "second": "12",
                                    "time": "09:02:12",
                                    "tz": "EDT",
                                    "tz_dst": "EDT",
                                    "tz_offset": "-0400",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "23",
                                    "year": "2026"
                                },
                                "ansible_default_ipv4": {
                                    "address": "38.102.83.189",
                                    "alias": "eth0",
                                    "broadcast": "38.102.83.255",
                                    "gateway": "38.102.83.1",
                                    "interface": "eth0",
                                    "macaddress": "fa:16:3e:63:39:9d",
                                    "mtu": 1500,
                                    "netmask": "255.255.255.0",
                                    "network": "38.102.83.0",
                                    "prefix": "24",
                                    "type": "ether"
                                },
                                "ansible_default_ipv6": {},
                                "ansible_distribution": "CentOS",
                                "ansible_distribution_file_parsed": true,
                                "ansible_distribution_file_path": "/etc/centos-release",
                                "ansible_distribution_file_variety": "CentOS",
                                "ansible_distribution_major_version": "9",
                                "ansible_distribution_release": "Stream",
                                "ansible_distribution_version": "9",
                                "ansible_dns": {
                                    "nameservers": [
                                        "199.204.44.24",
                                        "199.204.47.54"
                                    ],
                                    "search": [
                                        "novalocal"
                                    ]
                                },
                                "ansible_domain": "novalocal",
                                "ansible_effective_group_id": 1000,
                                "ansible_effective_user_id": 1000,
                                "ansible_env": {
                                    "BASH_FUNC_which%%": "() {  ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@\n}",
                                    "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus",
                                    "DEBUGINFOD_IMA_CERT_PATH": "/etc/keys/ima:",
                                    "DEBUGINFOD_URLS": "https://debuginfod.centos.org/ ",
                                    "HOME": "/home/zuul",
                                    "LANG": "en_US.UTF-8",
                                    "LESSOPEN": "||/usr/bin/lesspipe.sh %s",
                                    "LOGNAME": "zuul",
                                    "MOTD_SHOWN": "pam",
                                    "PATH": "/home/zuul/.local/bin:/home/zuul/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin",
                                    "PWD": "/home/zuul",
                                    "SELINUX_LEVEL_REQUESTED": "",
                                    "SELINUX_ROLE_REQUESTED": "",
                                    "SELINUX_USE_CURRENT_RANGE": "",
                                    "SHELL": "/bin/bash",
                                    "SHLVL": "1",
                                    "SSH_CLIENT": "38.102.83.47 41462 22",
                                    "SSH_CONNECTION": "38.102.83.47 41462 38.102.83.189 22",
                                    "USER": "zuul",
                                    "XDG_RUNTIME_DIR": "/run/user/1000",
                                    "XDG_SESSION_CLASS": "user",
                                    "XDG_SESSION_ID": "1",
                                    "XDG_SESSION_TYPE": "tty",
                                    "_": "/usr/bin/python3",
                                    "which_declare": "declare -f"
                                },
                                "ansible_eth0": {
                                    "active": true,
                                    "device": "eth0",
                                    "features": {
                                        "esp_hw_offload": "off [fixed]",
                                        "esp_tx_csum_hw_offload": "off [fixed]",
                                        "generic_receive_offload": "on",
                                        "generic_segmentation_offload": "on",
                                        "highdma": "on [fixed]",
                                        "hsr_dup_offload": "off [fixed]",
                                        "hsr_fwd_offload": "off [fixed]",
                                        "hsr_tag_ins_offload": "off [fixed]",
                                        "hsr_tag_rm_offload": "off [fixed]",
                                        "hw_tc_offload": "off [fixed]",
                                        "l2_fwd_offload": "off [fixed]",
                                        "large_receive_offload": "off [fixed]",
                                        "loopback": "off [fixed]",
                                        "macsec_hw_offload": "off [fixed]",
                                        "ntuple_filters": "off [fixed]",
                                        "receive_hashing": "off [fixed]",
                                        "rx_all": "off [fixed]",
                                        "rx_checksumming": "on [fixed]",
                                        "rx_fcs": "off [fixed]",
                                        "rx_gro_hw": "on",
                                        "rx_gro_list": "off",
                                        "rx_udp_gro_forwarding": "off",
                                        "rx_udp_tunnel_port_offload": "off [fixed]",
                                        "rx_vlan_filter": "on [fixed]",
                                        "rx_vlan_offload": "off [fixed]",
                                        "rx_vlan_stag_filter": "off [fixed]",
                                        "rx_vlan_stag_hw_parse": "off [fixed]",
                                        "scatter_gather": "on",
                                        "tcp_segmentation_offload": "on",
                                        "tls_hw_record": "off [fixed]",
                                        "tls_hw_rx_offload": "off [fixed]",
                                        "tls_hw_tx_offload": "off [fixed]",
                                        "tx_checksum_fcoe_crc": "off [fixed]",
                                        "tx_checksum_ip_generic": "on",
                                        "tx_checksum_ipv4": "off [fixed]",
                                        "tx_checksum_ipv6": "off [fixed]",
                                        "tx_checksum_sctp": "off [fixed]",
                                        "tx_checksumming": "on",
                                        "tx_esp_segmentation": "off [fixed]",
                                        "tx_fcoe_segmentation": "off [fixed]",
                                        "tx_gre_csum_segmentation": "off [fixed]",
                                        "tx_gre_segmentation": "off [fixed]",
                                        "tx_gso_list": "off [fixed]",
                                        "tx_gso_partial": "off [fixed]",
                                        "tx_gso_robust": "on [fixed]",
                                        "tx_ipxip4_segmentation": "off [fixed]",
                                        "tx_ipxip6_segmentation": "off [fixed]",
                                        "tx_nocache_copy": "off",
                                        "tx_scatter_gather": "on",
                                        "tx_scatter_gather_fraglist": "off [fixed]",
                                        "tx_sctp_segmentation": "off [fixed]",
                                        "tx_tcp6_segmentation": "on",
                                        "tx_tcp_ecn_segmentation": "on",
                                        "tx_tcp_mangleid_segmentation": "off",
                                        "tx_tcp_segmentation": "on",
                                        "tx_tunnel_remcsum_segmentation": "off [fixed]",
                                        "tx_udp_segmentation": "off [fixed]",
                                        "tx_udp_tnl_csum_segmentation": "off [fixed]",
                                        "tx_udp_tnl_segmentation": "off [fixed]",
                                        "tx_vlan_offload": "off [fixed]",
                                        "tx_vlan_stag_hw_insert": "off [fixed]",
                                        "vlan_challenged": "off [fixed]"
                                    },
                                    "hw_timestamp_filters": [],
                                    "ipv4": {
                                        "address": "38.102.83.189",
                                        "broadcast": "38.102.83.255",
                                        "netmask": "255.255.255.0",
                                        "network": "38.102.83.0",
                                        "prefix": "24"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "fe80::f816:3eff:fe63:399d",
                                            "prefix": "64",
                                            "scope": "link"
                                        }
                                    ],
                                    "macaddress": "fa:16:3e:63:39:9d",
                                    "module": "virtio_net",
                                    "mtu": 1500,
                                    "pciid": "virtio1",
                                    "promisc": false,
                                    "speed": -1,
                                    "timestamping": [],
                                    "type": "ether"
                                },
                                "ansible_fips": false,
                                "ansible_fqdn": "np0000068575.novalocal",
                                "ansible_hostname": "np0000068575",
                                "ansible_interfaces": [
                                    "lo",
                                    "eth0"
                                ],
                                "ansible_kernel": "5.14.0-710.el9.x86_64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Wed May 27 09:04:56 UTC 2026",
                                "ansible_lo": {
                                    "active": true,
                                    "device": "lo",
                                    "features": {
                                        "esp_hw_offload": "off [fixed]",
                                        "esp_tx_csum_hw_offload": "off [fixed]",
                                        "generic_receive_offload": "on",
                                        "generic_segmentation_offload": "on",
                                        "highdma": "on [fixed]",
                                        "hsr_dup_offload": "off [fixed]",
                                        "hsr_fwd_offload": "off [fixed]",
                                        "hsr_tag_ins_offload": "off [fixed]",
                                        "hsr_tag_rm_offload": "off [fixed]",
                                        "hw_tc_offload": "off [fixed]",
                                        "l2_fwd_offload": "off [fixed]",
                                        "large_receive_offload": "off [fixed]",
                                        "loopback": "on [fixed]",
                                        "macsec_hw_offload": "off [fixed]",
                                        "ntuple_filters": "off [fixed]",
                                        "receive_hashing": "off [fixed]",
                                        "rx_all": "off [fixed]",
                                        "rx_checksumming": "on [fixed]",
                                        "rx_fcs": "off [fixed]",
                                        "rx_gro_hw": "off [fixed]",
                                        "rx_gro_list": "off",
                                        "rx_udp_gro_forwarding": "off",
                                        "rx_udp_tunnel_port_offload": "off [fixed]",
                                        "rx_vlan_filter": "off [fixed]",
                                        "rx_vlan_offload": "off [fixed]",
                                        "rx_vlan_stag_filter": "off [fixed]",
                                        "rx_vlan_stag_hw_parse": "off [fixed]",
                                        "scatter_gather": "on",
                                        "tcp_segmentation_offload": "on",
                                        "tls_hw_record": "off [fixed]",
                                        "tls_hw_rx_offload": "off [fixed]",
                                        "tls_hw_tx_offload": "off [fixed]",
                                        "tx_checksum_fcoe_crc": "off [fixed]",
                                        "tx_checksum_ip_generic": "on [fixed]",
                                        "tx_checksum_ipv4": "off [fixed]",
                                        "tx_checksum_ipv6": "off [fixed]",
                                        "tx_checksum_sctp": "on [fixed]",
                                        "tx_checksumming": "on",
                                        "tx_esp_segmentation": "off [fixed]",
                                        "tx_fcoe_segmentation": "off [fixed]",
                                        "tx_gre_csum_segmentation": "off [fixed]",
                                        "tx_gre_segmentation": "off [fixed]",
                                        "tx_gso_list": "on",
                                        "tx_gso_partial": "off [fixed]",
                                        "tx_gso_robust": "off [fixed]",
                                        "tx_ipxip4_segmentation": "off [fixed]",
                                        "tx_ipxip6_segmentation": "off [fixed]",
                                        "tx_nocache_copy": "off [fixed]",
                                        "tx_scatter_gather": "on [fixed]",
                                        "tx_scatter_gather_fraglist": "on [fixed]",
                                        "tx_sctp_segmentation": "on",
                                        "tx_tcp6_segmentation": "on",
                                        "tx_tcp_ecn_segmentation": "on",
                                        "tx_tcp_mangleid_segmentation": "on",
                                        "tx_tcp_segmentation": "on",
                                        "tx_tunnel_remcsum_segmentation": "off [fixed]",
                                        "tx_udp_segmentation": "on",
                                        "tx_udp_tnl_csum_segmentation": "off [fixed]",
                                        "tx_udp_tnl_segmentation": "off [fixed]",
                                        "tx_vlan_offload": "off [fixed]",
                                        "tx_vlan_stag_hw_insert": "off [fixed]",
                                        "vlan_challenged": "on [fixed]"
                                    },
                                    "hw_timestamp_filters": [],
                                    "ipv4": {
                                        "address": "127.0.0.1",
                                        "broadcast": "",
                                        "netmask": "255.0.0.0",
                                        "network": "127.0.0.0",
                                        "prefix": "8"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "::1",
                                            "prefix": "128",
                                            "scope": "host"
                                        }
                                    ],
                                    "mtu": 65536,
                                    "promisc": false,
                                    "timestamping": [],
                                    "type": "loopback"
                                },
                                "ansible_local": {},
                                "ansible_locally_reachable_ips": {
                                    "ipv4": [
                                        "38.102.83.189",
                                        "127.0.0.0/8",
                                        "127.0.0.1"
                                    ],
                                    "ipv6": [
                                        "::1",
                                        "fe80::f816:3eff:fe63:399d"
                                    ]
                                },
                                "ansible_lsb": {},
                                "ansible_machine": "x86_64",
                                "ansible_machine_id": "1b9b1cdb27be1dbf151fa8bcfcd97dde",
                                "ansible_nodename": "np0000068575.novalocal",
                                "ansible_os_family": "RedHat",
                                "ansible_pkg_mgr": "dnf",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "(hd0,msdos1)/boot/vmlinuz-5.14.0-710.el9.x86_64",
                                    "console": "ttyS0,115200n8",
                                    "crashkernel": "1G-2G:192M,2G-64G:256M,64G-:512M",
                                    "net.ifnames": "0",
                                    "no_timer_check": true,
                                    "ro": true,
                                    "root": "UUID=2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                },
                                "ansible_python": {
                                    "executable": "/usr/bin/python3",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 25,
                                        "minor": 9,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        9,
                                        25,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.9.25",
                                "ansible_real_group_id": 1000,
                                "ansible_real_user_id": 1000,
                                "ansible_selinux": {
                                    "config_mode": "enforcing",
                                    "mode": "enforcing",
                                    "policyvers": 33,
                                    "status": "enabled",
                                    "type": "targeted"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "systemd",
                                "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNwWdVhP6rG9Bg/lrxoA9eehODuUWfAFsQkc1j5m3FM2qdiovI9ljPFj4dIHp/UBrpilDw0vqXkU411aym8m9qc=",
                                "ansible_ssh_host_key_ecdsa_public_keytype": "ecdsa-sha2-nistp256",
                                "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIIudRkPPfa4VMu3vQNqfEI8HQ4BviUxv0Y3DbNmJQSZi",
                                "ansible_ssh_host_key_ed25519_public_keytype": "ssh-ed25519",
                                "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQClkn4YDYZAdxw0VMHNRY3/PetOI9RuwVkdi5DGDN2fWz7Yl5BrhLcW1wOciHZZLT/Ocd8hB8F5xaIr6bA4SJwQawy8DpLkeiSV7jLIeTwbOh5c1HbLLc1YbhVgMOqFvZ09Xx7EeBOnZn32jIdyvwFcZAwqYYIfIW74uLNNLOu/vLmTgNc4PO5jr6aiEGX1SaR1xXUkbg02E5q5DzMROds1ypMiJYoyli7y9nsBIAep3rIjfEJi2OJqjBTsczX4Gyy2Us1YTV1bVRiCHbG4EqDdp1Be3cIbCFy29uzKawA5OYhWn/JKpvp9MuPZq64fWJePosNkXzvAcYqEeVcyau8FpWmSNPyB7jKpCbQhX7uKaFWQ/9HNp0HXbATMCQlAnvDmALboaNWxQXR+QkoQKIjJtTUSSwPWvIqT+Tm6Y4bmCUZUP9i4RkrCvucVw+RSPbbWVx+Hh/sxw5JqlGOzNSUUHQy3kE/LoZb+fEcZa9p2YNtdsTB2zjjpRh3NoHw/cX8=",
                                "ansible_ssh_host_key_rsa_public_keytype": "ssh-rsa",
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": [
                                    ""
                                ],
                                "ansible_system_capabilities_enforced": "True",
                                "ansible_user_dir": "/home/zuul",
                                "ansible_user_gecos": "",
                                "ansible_user_gid": 1000,
                                "ansible_user_id": "zuul",
                                "ansible_user_shell": "/bin/bash",
                                "ansible_user_uid": 1000,
                                "ansible_userspace_architecture": "x86_64",
                                "ansible_userspace_bits": "64",
                                "gather_subset": [
                                    "network"
                                ],
                                "module_setup": true
                            },
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "fact_path": "/etc/ansible/facts.d",
                                    "filter": [],
                                    "gather_subset": [
                                        "network"
                                    ],
                                    "gather_timeout": 10
                                }
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:12.300605Z",
                            "start": "2026-06-09T13:02:11.831088Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000013",
                        "name": "Gather network facts"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "start-zuul-console"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:12.358405Z",
                            "start": "2026-06-09T13:02:12.321308Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000015",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-000000000095",
                        "name": "start-zuul-console",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/start-zuul-console"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:12.846819Z",
                            "start": "2026-06-09T13:02:12.377469Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000097",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "add-build-sshkey"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:12.885945Z",
                            "start": "2026-06-09T13:02:12.854383Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000017",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "stat",
                            "changed": false,
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:13.197642Z",
                            "start": "2026-06-09T13:02:12.897142Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000b1",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:13.230652Z",
                            "start": "2026-06-09T13:02:13.202060Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000b2",
                        "name": "Create a new key in workspace based on build UUID"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-keygen",
                                "-t",
                                "rsa",
                                "-N",
                                "",
                                "-C",
                                "zuul-build-sshkey",
                                "-f",
                                "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.119204",
                            "end": "2026-06-09 13:02:13.848561",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_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": "0a580a2a-001b-8977-f1c1-0000000000c7-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:02:13.729357",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa.pub\nThe key fingerprint is:\nSHA256:bnVs0DkOUk8OiIdHnTvMTZssQSHZdfmN+mwSml1omig zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|       +o*=+o .. |\n|      o =o=*.o.  |\n|       o.oo**o o.|\n|         .*==.. o|\n|        S .o=o   |\n|       . . o= .  |\n|        o. B =   |\n|      E.. = o +  |\n|       .     o   |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:bnVs0DkOUk8OiIdHnTvMTZssQSHZdfmN+mwSml1omig zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|       +o*=+o .. |",
                                "|      o =o=*.o.  |",
                                "|       o.oo**o o.|",
                                "|         .*==.. o|",
                                "|        S .o=o   |",
                                "|       . . o= .  |",
                                "|        o. B =   |",
                                "|      E.. = o +  |",
                                "|       .     o   |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0a580a2a-001b-8977-f1c1-0000000000c7-0-controller"
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:13.916314Z",
                            "start": "2026-06-09T13:02:13.248480Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000c7",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:13.962578Z",
                            "start": "2026-06-09T13:02:13.924925Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000c8",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:14.018567Z",
                            "start": "2026-06-09T13:02:13.992634Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000ed",
                        "name": "Remove previously added zuul-build-sshkey"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCZcRJLvWqhT1Gq1A3rkeR4MHytl/ulSurGvTkb1OOtgLHpx50/nMd6VoK0dV9NbGiBuySkVq+5JFPl2CLiVPz4bHBD5uDhf5bdqmHGqFR0wrxrsIwllonXKfp2Ch8IR00ApaOGPHmNzGv+xT1tIizxMu10xPszt5d3Apw23bj9oi/L9HCIzner+2nd0S5adYaQSnpigeZJGJqLhWTsYWiOijzv7bhqn+pZGbIgb+eGKauMV/jNa/Otvmt8itjcCPp/T+Bh2K5HG20yA3wL3nnB1WTSapXuSJZtxsskYOri5X/6Fhqb4DFuIAxrhU1zKLm1LlETWS87P0xIzMEbNHbRqcL4gd7hgzaRPWXAha2bEkmWJwQNAULlK5Fz96kmDfQ983Oo5hYGE1DR1mBZQ52u8ANY+9tr4ybTPfhSQzES4yHDufe2avLg5LJMDH1G/qBbuBhBPNQ1z5rmuWks820w7HdNiEGpG1JZ2L1cICq17y6w7bd1rdwBDCYwPRUMXLk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCZcRJLvWqhT1Gq1A3rkeR4MHytl/ulSurGvTkb1OOtgLHpx50/nMd6VoK0dV9NbGiBuySkVq+5JFPl2CLiVPz4bHBD5uDhf5bdqmHGqFR0wrxrsIwllonXKfp2Ch8IR00ApaOGPHmNzGv+xT1tIizxMu10xPszt5d3Apw23bj9oi/L9HCIzner+2nd0S5adYaQSnpigeZJGJqLhWTsYWiOijzv7bhqn+pZGbIgb+eGKauMV/jNa/Otvmt8itjcCPp/T+Bh2K5HG20yA3wL3nnB1WTSapXuSJZtxsskYOri5X/6Fhqb4DFuIAxrhU1zKLm1LlETWS87P0xIzMEbNHbRqcL4gd7hgzaRPWXAha2bEkmWJwQNAULlK5Fz96kmDfQ983Oo5hYGE1DR1mBZQ52u8ANY+9tr4ybTPfhSQzES4yHDufe2avLg5LJMDH1G/qBbuBhBPNQ1z5rmuWks820w7HdNiEGpG1JZ2L1cICq17y6w7bd1rdwBDCYwPRUMXLk= 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": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:14.483884Z",
                            "start": "2026-06-09T13:02:14.024595Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000ee",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/.ssh"
                                },
                                "before": {
                                    "path": "/home/zuul/.ssh"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 448,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/.ssh",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0700",
                            "owner": "zuul",
                            "path": "/home/zuul/.ssh",
                            "secontext": "unconfined_u:object_r:ssh_home_t:s0",
                            "size": 29,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:14.767148Z",
                            "start": "2026-06-09T13:02:14.489130Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000ef",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "48285d333e129da1345debf38065fb4f775a6fce",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "3baddb9c77f44612873b572b5ad8a5f5_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "48285d333e129da1345debf38065fb4f775a6fce",
                                    "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-1781010134.8716805-128-37462188344461/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "0571093c667bbeee2491e818559e05f1",
                            "mode": "0600",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:ssh_home_t:s0",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010134.8716805-128-37462188344461/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:15.643155Z",
                            "start": "2026-06-09T13:02:14.774082Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000f0",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "aadfcca27b6c364097c474ceafbbeb5ab6cb6e66",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "3baddb9c77f44612873b572b5ad8a5f5_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "aadfcca27b6c364097c474ceafbbeb5ab6cb6e66",
                                    "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-1781010135.7457826-138-279449834742578/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "60d10ecb377e5ddae54773be03338e9b",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:ssh_home_t:s0",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010135.7457826-138-279449834742578/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:16.475567Z",
                            "start": "2026-06-09T13:02:15.649965Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000f1",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:16.509764Z",
                            "start": "2026-06-09T13:02:16.482755Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000c9",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/var/lib/zuul-ssh/..data/priv"
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000ce",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_0/review.rdoproject.org/config/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:16.971691Z",
                            "start": "2026-06-09T13:02:16.518315Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000d0",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa"
                            ],
                            "delta": "0:00:00.019121",
                            "end": "2026-06-09 13:02:17.284415",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_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": "0a580a2a-001b-8977-f1c1-0000000000d6-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:02:17.265294",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/3baddb9c77f44612873b572b5ad8a5f5_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0a580a2a-001b-8977-f1c1-0000000000d6-0-controller"
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:17.337237Z",
                            "start": "2026-06-09T13:02:16.978811Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000d6",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:17.760633Z",
                            "start": "2026-06-09T13:02:17.344217Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000d7",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-0000000000af",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:17.802336Z",
                            "start": "2026-06-09T13:02:17.764906Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-0000000000d8",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "validate-host"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:17.844476Z",
                            "start": "2026-06-09T13:02:17.812187Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000018",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_info_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:17.906254Z",
                            "start": "2026-06-09T13:02:17.866296Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000016d",
                        "name": "Define zuul_info_dir fact"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info"
                                }
                            },
                            "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/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "1000",
                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info",
                            "size": 28,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:18.223420Z",
                            "start": "2026-06-09T13:02:17.910348Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000016e",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "setup",
                            "ansible_facts": {
                                "ansible_all_ipv4_addresses": [
                                    "38.102.83.189"
                                ],
                                "ansible_all_ipv6_addresses": [
                                    "fe80::f816:3eff:fe63:399d"
                                ],
                                "ansible_apparmor": {
                                    "status": "disabled"
                                },
                                "ansible_architecture": "x86_64",
                                "ansible_bios_date": "04/01/2014",
                                "ansible_bios_vendor": "SeaBIOS",
                                "ansible_bios_version": "1.15.0-1",
                                "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": "QEMU",
                                "ansible_chassis_version": "pc-i440fx-6.2",
                                "ansible_cmdline": {
                                    "BOOT_IMAGE": "(hd0,msdos1)/boot/vmlinuz-5.14.0-710.el9.x86_64",
                                    "console": "ttyS0,115200n8",
                                    "crashkernel": "1G-2G:192M,2G-64G:256M,64G-:512M",
                                    "net.ifnames": "0",
                                    "no_timer_check": true,
                                    "ro": true,
                                    "root": "UUID=2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                },
                                "ansible_date_time": {
                                    "date": "2026-06-09",
                                    "day": "09",
                                    "epoch": "1781010138",
                                    "epoch_int": "1781010138",
                                    "hour": "09",
                                    "iso8601": "2026-06-09T13:02:18Z",
                                    "iso8601_basic": "20260609T090218900069",
                                    "iso8601_basic_short": "20260609T090218",
                                    "iso8601_micro": "2026-06-09T13:02:18.900069Z",
                                    "minute": "02",
                                    "month": "06",
                                    "second": "18",
                                    "time": "09:02:18",
                                    "tz": "EDT",
                                    "tz_dst": "EDT",
                                    "tz_offset": "-0400",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "23",
                                    "year": "2026"
                                },
                                "ansible_default_ipv4": {
                                    "address": "38.102.83.189",
                                    "alias": "eth0",
                                    "broadcast": "38.102.83.255",
                                    "gateway": "38.102.83.1",
                                    "interface": "eth0",
                                    "macaddress": "fa:16:3e:63:39:9d",
                                    "mtu": 1500,
                                    "netmask": "255.255.255.0",
                                    "network": "38.102.83.0",
                                    "prefix": "24",
                                    "type": "ether"
                                },
                                "ansible_default_ipv6": {},
                                "ansible_device_links": {
                                    "ids": {
                                        "sr0": [
                                            "ata-QEMU_DVD-ROM_QM00001"
                                        ]
                                    },
                                    "labels": {
                                        "sr0": [
                                            "config-2"
                                        ]
                                    },
                                    "masters": {},
                                    "uuids": {
                                        "sr0": [
                                            "2026-06-09-13-01-24-00"
                                        ],
                                        "vda1": [
                                            "2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                        ]
                                    }
                                },
                                "ansible_devices": {
                                    "sr0": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [
                                                "ata-QEMU_DVD-ROM_QM00001"
                                            ],
                                            "labels": [
                                                "config-2"
                                            ],
                                            "masters": [],
                                            "uuids": [
                                                "2026-06-09-13-01-24-00"
                                            ]
                                        },
                                        "model": "QEMU DVD-ROM",
                                        "partitions": {},
                                        "removable": "1",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "mq-deadline",
                                        "sectors": "964",
                                        "sectorsize": "2048",
                                        "size": "482.00 KB",
                                        "support_discard": "0",
                                        "vendor": "QEMU",
                                        "virtual": 1
                                    },
                                    "vda": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {
                                            "vda1": {
                                                "holders": [],
                                                "links": {
                                                    "ids": [],
                                                    "labels": [],
                                                    "masters": [],
                                                    "uuids": [
                                                        "2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                                    ]
                                                },
                                                "sectors": "167770079",
                                                "sectorsize": 512,
                                                "size": "80.00 GB",
                                                "start": "2048",
                                                "uuid": "2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                            }
                                        },
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "167772160",
                                        "sectorsize": "512",
                                        "size": "80.00 GB",
                                        "support_discard": "512",
                                        "vendor": "0x1af4",
                                        "virtual": 1
                                    }
                                },
                                "ansible_distribution": "CentOS",
                                "ansible_distribution_file_parsed": true,
                                "ansible_distribution_file_path": "/etc/centos-release",
                                "ansible_distribution_file_variety": "CentOS",
                                "ansible_distribution_major_version": "9",
                                "ansible_distribution_release": "Stream",
                                "ansible_distribution_version": "9",
                                "ansible_dns": {
                                    "nameservers": [
                                        "199.204.44.24",
                                        "199.204.47.54"
                                    ],
                                    "search": [
                                        "novalocal"
                                    ]
                                },
                                "ansible_domain": "novalocal",
                                "ansible_effective_group_id": 1000,
                                "ansible_effective_user_id": 1000,
                                "ansible_env": {
                                    "BASH_FUNC_which%%": "() {  ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@\n}",
                                    "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus",
                                    "DEBUGINFOD_IMA_CERT_PATH": "/etc/keys/ima:",
                                    "DEBUGINFOD_URLS": "https://debuginfod.centos.org/ ",
                                    "HOME": "/home/zuul",
                                    "LANG": "en_US.UTF-8",
                                    "LESSOPEN": "||/usr/bin/lesspipe.sh %s",
                                    "LOGNAME": "zuul",
                                    "MOTD_SHOWN": "pam",
                                    "PATH": "/home/zuul/.local/bin:/home/zuul/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin",
                                    "PWD": "/home/zuul",
                                    "SELINUX_LEVEL_REQUESTED": "",
                                    "SELINUX_ROLE_REQUESTED": "",
                                    "SELINUX_USE_CURRENT_RANGE": "",
                                    "SHELL": "/bin/bash",
                                    "SHLVL": "1",
                                    "SSH_CLIENT": "38.102.83.47 41462 22",
                                    "SSH_CONNECTION": "38.102.83.47 41462 38.102.83.189 22",
                                    "USER": "zuul",
                                    "XDG_RUNTIME_DIR": "/run/user/1000",
                                    "XDG_SESSION_CLASS": "user",
                                    "XDG_SESSION_ID": "1",
                                    "XDG_SESSION_TYPE": "tty",
                                    "_": "/usr/bin/python3",
                                    "which_declare": "declare -f"
                                },
                                "ansible_eth0": {
                                    "active": true,
                                    "device": "eth0",
                                    "features": {
                                        "esp_hw_offload": "off [fixed]",
                                        "esp_tx_csum_hw_offload": "off [fixed]",
                                        "generic_receive_offload": "on",
                                        "generic_segmentation_offload": "on",
                                        "highdma": "on [fixed]",
                                        "hsr_dup_offload": "off [fixed]",
                                        "hsr_fwd_offload": "off [fixed]",
                                        "hsr_tag_ins_offload": "off [fixed]",
                                        "hsr_tag_rm_offload": "off [fixed]",
                                        "hw_tc_offload": "off [fixed]",
                                        "l2_fwd_offload": "off [fixed]",
                                        "large_receive_offload": "off [fixed]",
                                        "loopback": "off [fixed]",
                                        "macsec_hw_offload": "off [fixed]",
                                        "ntuple_filters": "off [fixed]",
                                        "receive_hashing": "off [fixed]",
                                        "rx_all": "off [fixed]",
                                        "rx_checksumming": "on [fixed]",
                                        "rx_fcs": "off [fixed]",
                                        "rx_gro_hw": "on",
                                        "rx_gro_list": "off",
                                        "rx_udp_gro_forwarding": "off",
                                        "rx_udp_tunnel_port_offload": "off [fixed]",
                                        "rx_vlan_filter": "on [fixed]",
                                        "rx_vlan_offload": "off [fixed]",
                                        "rx_vlan_stag_filter": "off [fixed]",
                                        "rx_vlan_stag_hw_parse": "off [fixed]",
                                        "scatter_gather": "on",
                                        "tcp_segmentation_offload": "on",
                                        "tls_hw_record": "off [fixed]",
                                        "tls_hw_rx_offload": "off [fixed]",
                                        "tls_hw_tx_offload": "off [fixed]",
                                        "tx_checksum_fcoe_crc": "off [fixed]",
                                        "tx_checksum_ip_generic": "on",
                                        "tx_checksum_ipv4": "off [fixed]",
                                        "tx_checksum_ipv6": "off [fixed]",
                                        "tx_checksum_sctp": "off [fixed]",
                                        "tx_checksumming": "on",
                                        "tx_esp_segmentation": "off [fixed]",
                                        "tx_fcoe_segmentation": "off [fixed]",
                                        "tx_gre_csum_segmentation": "off [fixed]",
                                        "tx_gre_segmentation": "off [fixed]",
                                        "tx_gso_list": "off [fixed]",
                                        "tx_gso_partial": "off [fixed]",
                                        "tx_gso_robust": "on [fixed]",
                                        "tx_ipxip4_segmentation": "off [fixed]",
                                        "tx_ipxip6_segmentation": "off [fixed]",
                                        "tx_nocache_copy": "off",
                                        "tx_scatter_gather": "on",
                                        "tx_scatter_gather_fraglist": "off [fixed]",
                                        "tx_sctp_segmentation": "off [fixed]",
                                        "tx_tcp6_segmentation": "on",
                                        "tx_tcp_ecn_segmentation": "on",
                                        "tx_tcp_mangleid_segmentation": "off",
                                        "tx_tcp_segmentation": "on",
                                        "tx_tunnel_remcsum_segmentation": "off [fixed]",
                                        "tx_udp_segmentation": "off [fixed]",
                                        "tx_udp_tnl_csum_segmentation": "off [fixed]",
                                        "tx_udp_tnl_segmentation": "off [fixed]",
                                        "tx_vlan_offload": "off [fixed]",
                                        "tx_vlan_stag_hw_insert": "off [fixed]",
                                        "vlan_challenged": "off [fixed]"
                                    },
                                    "hw_timestamp_filters": [],
                                    "ipv4": {
                                        "address": "38.102.83.189",
                                        "broadcast": "38.102.83.255",
                                        "netmask": "255.255.255.0",
                                        "network": "38.102.83.0",
                                        "prefix": "24"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "fe80::f816:3eff:fe63:399d",
                                            "prefix": "64",
                                            "scope": "link"
                                        }
                                    ],
                                    "macaddress": "fa:16:3e:63:39:9d",
                                    "module": "virtio_net",
                                    "mtu": 1500,
                                    "pciid": "virtio1",
                                    "promisc": false,
                                    "speed": -1,
                                    "timestamping": [],
                                    "type": "ether"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "Other",
                                "ansible_fqdn": "np0000068575.novalocal",
                                "ansible_hostname": "np0000068575",
                                "ansible_hostnqn": "nqn.2014-08.org.nvmexpress:uuid:d5ca8177-6508-4eba-83e3-4c1e44e5f522",
                                "ansible_interfaces": [
                                    "lo",
                                    "eth0"
                                ],
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "5.14.0-710.el9.x86_64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Wed May 27 09:04:56 UTC 2026",
                                "ansible_lo": {
                                    "active": true,
                                    "device": "lo",
                                    "features": {
                                        "esp_hw_offload": "off [fixed]",
                                        "esp_tx_csum_hw_offload": "off [fixed]",
                                        "generic_receive_offload": "on",
                                        "generic_segmentation_offload": "on",
                                        "highdma": "on [fixed]",
                                        "hsr_dup_offload": "off [fixed]",
                                        "hsr_fwd_offload": "off [fixed]",
                                        "hsr_tag_ins_offload": "off [fixed]",
                                        "hsr_tag_rm_offload": "off [fixed]",
                                        "hw_tc_offload": "off [fixed]",
                                        "l2_fwd_offload": "off [fixed]",
                                        "large_receive_offload": "off [fixed]",
                                        "loopback": "on [fixed]",
                                        "macsec_hw_offload": "off [fixed]",
                                        "ntuple_filters": "off [fixed]",
                                        "receive_hashing": "off [fixed]",
                                        "rx_all": "off [fixed]",
                                        "rx_checksumming": "on [fixed]",
                                        "rx_fcs": "off [fixed]",
                                        "rx_gro_hw": "off [fixed]",
                                        "rx_gro_list": "off",
                                        "rx_udp_gro_forwarding": "off",
                                        "rx_udp_tunnel_port_offload": "off [fixed]",
                                        "rx_vlan_filter": "off [fixed]",
                                        "rx_vlan_offload": "off [fixed]",
                                        "rx_vlan_stag_filter": "off [fixed]",
                                        "rx_vlan_stag_hw_parse": "off [fixed]",
                                        "scatter_gather": "on",
                                        "tcp_segmentation_offload": "on",
                                        "tls_hw_record": "off [fixed]",
                                        "tls_hw_rx_offload": "off [fixed]",
                                        "tls_hw_tx_offload": "off [fixed]",
                                        "tx_checksum_fcoe_crc": "off [fixed]",
                                        "tx_checksum_ip_generic": "on [fixed]",
                                        "tx_checksum_ipv4": "off [fixed]",
                                        "tx_checksum_ipv6": "off [fixed]",
                                        "tx_checksum_sctp": "on [fixed]",
                                        "tx_checksumming": "on",
                                        "tx_esp_segmentation": "off [fixed]",
                                        "tx_fcoe_segmentation": "off [fixed]",
                                        "tx_gre_csum_segmentation": "off [fixed]",
                                        "tx_gre_segmentation": "off [fixed]",
                                        "tx_gso_list": "on",
                                        "tx_gso_partial": "off [fixed]",
                                        "tx_gso_robust": "off [fixed]",
                                        "tx_ipxip4_segmentation": "off [fixed]",
                                        "tx_ipxip6_segmentation": "off [fixed]",
                                        "tx_nocache_copy": "off [fixed]",
                                        "tx_scatter_gather": "on [fixed]",
                                        "tx_scatter_gather_fraglist": "on [fixed]",
                                        "tx_sctp_segmentation": "on",
                                        "tx_tcp6_segmentation": "on",
                                        "tx_tcp_ecn_segmentation": "on",
                                        "tx_tcp_mangleid_segmentation": "on",
                                        "tx_tcp_segmentation": "on",
                                        "tx_tunnel_remcsum_segmentation": "off [fixed]",
                                        "tx_udp_segmentation": "on",
                                        "tx_udp_tnl_csum_segmentation": "off [fixed]",
                                        "tx_udp_tnl_segmentation": "off [fixed]",
                                        "tx_vlan_offload": "off [fixed]",
                                        "tx_vlan_stag_hw_insert": "off [fixed]",
                                        "vlan_challenged": "on [fixed]"
                                    },
                                    "hw_timestamp_filters": [],
                                    "ipv4": {
                                        "address": "127.0.0.1",
                                        "broadcast": "",
                                        "netmask": "255.0.0.0",
                                        "network": "127.0.0.0",
                                        "prefix": "8"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "::1",
                                            "prefix": "128",
                                            "scope": "host"
                                        }
                                    ],
                                    "mtu": 65536,
                                    "promisc": false,
                                    "timestamping": [],
                                    "type": "loopback"
                                },
                                "ansible_loadavg": {
                                    "15m": 0.09,
                                    "1m": 0.88,
                                    "5m": 0.26
                                },
                                "ansible_local": {},
                                "ansible_locally_reachable_ips": {
                                    "ipv4": [
                                        "38.102.83.189",
                                        "127.0.0.0/8",
                                        "127.0.0.1"
                                    ],
                                    "ipv6": [
                                        "::1",
                                        "fe80::f816:3eff:fe63:399d"
                                    ]
                                },
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_machine_id": "1b9b1cdb27be1dbf151fa8bcfcd97dde",
                                "ansible_memfree_mb": 7147,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 7359,
                                        "used": 320
                                    },
                                    "real": {
                                        "free": 7147,
                                        "total": 7679,
                                        "used": 532
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 7679,
                                "ansible_mounts": [
                                    {
                                        "block_available": 20296759,
                                        "block_size": 4096,
                                        "block_total": 20954875,
                                        "block_used": 658116,
                                        "device": "/dev/vda1",
                                        "fstype": "xfs",
                                        "inode_available": 41888238,
                                        "inode_total": 41942512,
                                        "inode_used": 54274,
                                        "mount": "/",
                                        "options": "rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota",
                                        "size_available": 83135524864,
                                        "size_total": 85831168000,
                                        "uuid": "2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                    }
                                ],
                                "ansible_nodename": "np0000068575.novalocal",
                                "ansible_os_family": "RedHat",
                                "ansible_pkg_mgr": "dnf",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "(hd0,msdos1)/boot/vmlinuz-5.14.0-710.el9.x86_64",
                                    "console": "ttyS0,115200n8",
                                    "crashkernel": "1G-2G:192M,2G-64G:256M,64G-:512M",
                                    "net.ifnames": "0",
                                    "no_timer_check": true,
                                    "ro": true,
                                    "root": "UUID=2b7d3b0e-f5c7-4b13-98bc-96267c9c5cc6"
                                },
                                "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"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 8,
                                "ansible_processor_nproc": 8,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 8,
                                "ansible_product_name": "OpenStack Nova",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "26.3.1",
                                "ansible_python": {
                                    "executable": "/usr/bin/python3",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 25,
                                        "minor": 9,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        9,
                                        25,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.9.25",
                                "ansible_real_group_id": 1000,
                                "ansible_real_user_id": 1000,
                                "ansible_selinux": {
                                    "config_mode": "enforcing",
                                    "mode": "enforcing",
                                    "policyvers": 33,
                                    "status": "enabled",
                                    "type": "targeted"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "systemd",
                                "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNwWdVhP6rG9Bg/lrxoA9eehODuUWfAFsQkc1j5m3FM2qdiovI9ljPFj4dIHp/UBrpilDw0vqXkU411aym8m9qc=",
                                "ansible_ssh_host_key_ecdsa_public_keytype": "ecdsa-sha2-nistp256",
                                "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIIudRkPPfa4VMu3vQNqfEI8HQ4BviUxv0Y3DbNmJQSZi",
                                "ansible_ssh_host_key_ed25519_public_keytype": "ssh-ed25519",
                                "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQClkn4YDYZAdxw0VMHNRY3/PetOI9RuwVkdi5DGDN2fWz7Yl5BrhLcW1wOciHZZLT/Ocd8hB8F5xaIr6bA4SJwQawy8DpLkeiSV7jLIeTwbOh5c1HbLLc1YbhVgMOqFvZ09Xx7EeBOnZn32jIdyvwFcZAwqYYIfIW74uLNNLOu/vLmTgNc4PO5jr6aiEGX1SaR1xXUkbg02E5q5DzMROds1ypMiJYoyli7y9nsBIAep3rIjfEJi2OJqjBTsczX4Gyy2Us1YTV1bVRiCHbG4EqDdp1Be3cIbCFy29uzKawA5OYhWn/JKpvp9MuPZq64fWJePosNkXzvAcYqEeVcyau8FpWmSNPyB7jKpCbQhX7uKaFWQ/9HNp0HXbATMCQlAnvDmALboaNWxQXR+QkoQKIjJtTUSSwPWvIqT+Tm6Y4bmCUZUP9i4RkrCvucVw+RSPbbWVx+Hh/sxw5JqlGOzNSUUHQy3kE/LoZb+fEcZa9p2YNtdsTB2zjjpRh3NoHw/cX8=",
                                "ansible_ssh_host_key_rsa_public_keytype": "ssh-rsa",
                                "ansible_swapfree_mb": 0,
                                "ansible_swaptotal_mb": 0,
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": [
                                    ""
                                ],
                                "ansible_system_capabilities_enforced": "True",
                                "ansible_system_vendor": "OpenStack Foundation",
                                "ansible_uptime_seconds": 45,
                                "ansible_user_dir": "/home/zuul",
                                "ansible_user_gecos": "",
                                "ansible_user_gid": 1000,
                                "ansible_user_id": "zuul",
                                "ansible_user_shell": "/bin/bash",
                                "ansible_user_uid": 1000,
                                "ansible_userspace_architecture": "x86_64",
                                "ansible_userspace_bits": "64",
                                "ansible_virtualization_role": "guest",
                                "ansible_virtualization_tech_guest": [
                                    "openstack"
                                ],
                                "ansible_virtualization_tech_host": [
                                    "kvm"
                                ],
                                "ansible_virtualization_type": "openstack",
                                "gather_subset": [
                                    "all"
                                ],
                                "module_setup": true
                            },
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "fact_path": "/etc/ansible/facts.d",
                                    "filter": [],
                                    "gather_subset": [
                                        "all"
                                    ],
                                    "gather_timeout": 10
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:18.977510Z",
                            "start": "2026-06-09T13:02:18.230257Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000016f",
                        "name": "Collect information about the host"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "validate_host_hostname_sanitized": "controller"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:19.043562Z",
                            "start": "2026-06-09T13:02:18.983006Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000170",
                        "name": "Sanitize hostname"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "template",
                            "changed": true,
                            "checksum": "68aaf8c6daf6b43ac2a682c0c9b7ee616b6237ee",
                            "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/host-info.controller.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "host-info.j2",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "68aaf8c6daf6b43ac2a682c0c9b7ee616b6237ee",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/host-info.controller.yaml",
                                    "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/3baddb9c77f44612873b572b5ad8a5f5/work/.ansible/tmp/ansible-tmp-1781010139.087988-204-87966342418673/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "cf9b5c94880c717b1bf306a3c2c3157e",
                            "mode": "0644",
                            "owner": "1000",
                            "size": 14846,
                            "src": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/.ansible/tmp/ansible-tmp-1781010139.087988-204-87966342418673/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:19.560158Z",
                            "start": "2026-06-09T13:02:19.048390Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000171",
                        "name": "Write out all ansible variables/facts known for each host"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "_zuul_nolog_return": true,
                            "action": "zuul_debug_info",
                            "changed": false,
                            "df_i": "Filesystem       Inodes IUsed    IFree IUse% Mounted on\ndevtmpfs         953324   398   952926    1% /dev\ntmpfs            983031     2   983029    1% /dev/shm\ntmpfs            819200   594   818606    1% /run\n/dev/vda1      41942512 54274 41888238    1% /\ntmpfs            196606    16   196590    1% /run/user/1000\n",
                            "df_m": "Filesystem     1M-blocks  Used Available Use% Mounted on\ndevtmpfs            3724     0      3724   0% /dev\ntmpfs               3840     0      3840   0% /dev/shm\ntmpfs               1536    17      1520   2% /run\n/dev/vda1          81855  2571     79285   4% /\ntmpfs                768     0       768   0% /run/user/1000\n",
                            "image_manifest_files": [],
                            "invocation": {
                                "module_args": {
                                    "image_manifest": null,
                                    "image_manifest_files": [
                                        "/etc/dib-builddate.txt",
                                        "/etc/image-hostname.txt"
                                    ],
                                    "ipv4_route_required": false,
                                    "ipv6_route_required": false,
                                    "traceroute_host": null
                                }
                            },
                            "network_interfaces": "1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n       valid_lft forever preferred_lft forever\n    inet6 ::1/128 scope host \n       valid_lft forever preferred_lft forever\n2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000\n    link/ether fa:16:3e:63:39:9d brd ff:ff:ff:ff:ff:ff\n    altname enp0s3\n    altname ens3\n    inet 38.102.83.189/24 brd 38.102.83.255 scope global dynamic noprefixroute eth0\n       valid_lft 43161sec preferred_lft 43161sec\n    inet6 fe80::f816:3eff:fe63:399d/64 scope link proto kernel_ll \n       valid_lft forever preferred_lft forever\n",
                            "network_neighbors": "38.102.83.1 dev eth0 lladdr fa:61:25:a2:5a:71 STALE \n38.102.83.47 dev eth0 lladdr fa:16:3e:1f:fd:3d REACHABLE \n38.102.83.254 dev eth0 lladdr c6:e7:bc:23:0b:06 STALE \n38.102.83.253 dev eth0 lladdr fa:61:25:a2:5a:71 STALE \n",
                            "network_routing_v4": "default via 38.102.83.1 dev eth0 proto dhcp src 38.102.83.189 metric 100 \n38.102.83.0/24 dev eth0 proto kernel scope link src 38.102.83.189 metric 100 \n169.254.169.254 via 38.102.83.126 dev eth0 proto dhcp src 38.102.83.189 metric 100 \n",
                            "network_routing_v6": "::1 dev lo proto kernel metric 256 pref medium\nfe80::/64 dev eth0 proto kernel metric 256 pref medium\n",
                            "proc_cpuinfo": "processor\t: 0\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 0\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 0\ninitial apicid\t: 0\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 1\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 1\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 1\ninitial apicid\t: 1\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 2\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 2\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 2\ninitial apicid\t: 2\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 3\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 3\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 3\ninitial apicid\t: 3\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 4\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 4\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 4\ninitial apicid\t: 4\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 5\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 5\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 5\ninitial apicid\t: 5\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 6\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 6\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 6\ninitial apicid\t: 6\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\nprocessor\t: 7\nvendor_id\t: AuthenticAMD\ncpu family\t: 23\nmodel\t\t: 49\nmodel name\t: AMD EPYC-Rome Processor\nstepping\t: 0\nmicrocode\t: 0x1000065\ncpu MHz\t\t: 2800.000\ncache size\t: 512 KB\nphysical id\t: 7\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 7\ninitial apicid\t: 7\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean pausefilter pfthreshold umip rdpid arch_capabilities\nbugs\t\t: sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso ibpb_no_ret spectre_v2_user\nbogomips\t: 5600.00\nTLB size\t: 1024 4K pages\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 48 bits virtual\npower management:\n\n",
                            "traceroute": null,
                            "uname": "Linux np0000068575.novalocal 5.14.0-710.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 27 09:04:56 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux\n"
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:20.076025Z",
                            "start": "2026-06-09T13:02:19.567577Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000173",
                        "name": "Collect information about zuul worker"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "template",
                            "changed": true,
                            "checksum": "3492056566147c922798726665a6d0179c8f607a",
                            "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/zuul-info.controller.txt",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "zuul-info.j2",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "3492056566147c922798726665a6d0179c8f607a",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/zuul-info.controller.txt",
                                    "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/3baddb9c77f44612873b572b5ad8a5f5/work/.ansible/tmp/ansible-tmp-1781010140.1573172-227-142682578341287/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "4c83e8b7f3e50cfda6d6591ea254cc75",
                            "mode": "0644",
                            "owner": "1000",
                            "size": 2412,
                            "src": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/.ansible/tmp/ansible-tmp-1781010140.1573172-227-142682578341287/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-00000000016b",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:20.617898Z",
                            "start": "2026-06-09T13:02:20.083381Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000174",
                        "name": "Write out all zuul information for each host"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "false_condition": "ansible_connection == 'kubectl'",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:20.649388Z",
                            "start": "2026-06-09T13:02:20.624914Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000001a",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "false_condition": "ansible_connection == 'kubectl'",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:20.668114Z",
                            "start": "2026-06-09T13:02:20.653405Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-00000000001b",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/logs",
                                    "state": "absent",
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "state": "absent",
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/docs",
                                    "state": "absent",
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-000000000021",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:21.365376Z",
                            "start": "2026-06-09T13:02:20.672872Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000023",
                        "name": "Empty Zuul Output directories by removing them"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "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",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "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",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "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",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-8977-f1c1-000000000021",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:22.080879Z",
                            "start": "2026-06-09T13:02:21.373055Z"
                        },
                        "id": "0a580a2a-001b-8977-f1c1-000000000025",
                        "name": "Ensure Zuul Output directories exist"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 9,
            "failures": 0,
            "ignored": 0,
            "ok": 22,
            "rescued": 0,
            "skipped": 5,
            "unreachable": 0
        },
        "localhost": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 6,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "master",
    "index": "1",
    "phase": "pre",
    "playbook": "review.rdoproject.org/config/playbooks/ci-framework-rdo-base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:02:38.771508Z",
                    "start": "2026-06-09T13:02:22.901589Z"
                },
                "id": "0a580a2a-001b-dfa0-c338-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "mirror_fqdn": "mirror.regionone.vexxhost-nodepool-tripleo.rdoproject.org"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-dfa0-c338-000000000006",
                        "name": "mirror-info-fork",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_2/review.rdoproject.org/rdo-jobs/roles/mirror-info-fork"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:23.005887Z",
                            "start": "2026-06-09T13:02:22.912585Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000008",
                        "name": "Set mirror_fqdn if not defined"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/etc/ci",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/etc/ci",
                                    "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": "root",
                                    "mode": 493,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": "root",
                                    "path": "/etc/ci",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/etc/ci",
                            "secontext": "unconfined_u:object_r:etc_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-dfa0-c338-000000000006",
                        "name": "mirror-info-fork",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_2/review.rdoproject.org/rdo-jobs/roles/mirror-info-fork"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:23.475558Z",
                            "start": "2026-06-09T13:02:23.013504Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000009",
                        "name": "Create /etc/ci"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "template",
                            "changed": true,
                            "checksum": "92d92a03afdddee82732741071f662c729080c35",
                            "dest": "/etc/ci/mirror_info.sh",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "mirror_info.sh.j2",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "92d92a03afdddee82732741071f662c729080c35",
                                    "content": null,
                                    "dest": "/etc/ci/mirror_info.sh",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": "root",
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": "root",
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010143.5636582-8-149611453765420/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "9fb09f017f7a6e25986e4e572d40f2ad",
                            "mode": "0644",
                            "owner": "root",
                            "secontext": "system_u:object_r:etc_t:s0",
                            "size": 4482,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010143.5636582-8-149611453765420/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-dfa0-c338-000000000006",
                        "name": "mirror-info-fork",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_2/review.rdoproject.org/rdo-jobs/roles/mirror-info-fork"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:24.707540Z",
                            "start": "2026-06-09T13:02:23.484244Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000000a",
                        "name": "Install ci_mirror script"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA4Z/c9osaGGtU6X8fgELwfj/yayRurfcKA0HMFfdpPxev2dbwljysMuzoVp4OZmW1gvGtyYPSNRvnzgsaabPNKNo2ym5NToCP6UM+KSe93aln4BcM/24mXChYAbXJQ5Bqq/pIzsGs/pKetQN+vwvMxLOwTvpcsCJBXaa981RKML6xj9l/UZ7IIq1HSEKMvPLxZMWdu0Ut8DkCd5F4nOw9Wgml2uYpDCj5LLCrQQ9ChdOMz8hz6SighhNlRpPkvPaet3OXxr/ytFMu7j7vv06CaEnuMMiY2aTWN1Imin9eHAylIqFHta/3gFfQSWt9jXM7owkBLKL7ATzhaAn+fjNupw== arxcruz@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA4Z/c9osaGGtU6X8fgELwfj/yayRurfcKA0HMFfdpPxev2dbwljysMuzoVp4OZmW1gvGtyYPSNRvnzgsaabPNKNo2ym5NToCP6UM+KSe93aln4BcM/24mXChYAbXJQ5Bqq/pIzsGs/pKetQN+vwvMxLOwTvpcsCJBXaa981RKML6xj9l/UZ7IIq1HSEKMvPLxZMWdu0Ut8DkCd5F4nOw9Wgml2uYpDCj5LLCrQQ9ChdOMz8hz6SighhNlRpPkvPaet3OXxr/ytFMu7j7vv06CaEnuMMiY2aTWN1Imin9eHAylIqFHta/3gFfQSWt9jXM7owkBLKL7ATzhaAn+fjNupw== arxcruz@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA4Z/c9osaGGtU6X8fgELwfj/yayRurfcKA0HMFfdpPxev2dbwljysMuzoVp4OZmW1gvGtyYPSNRvnzgsaabPNKNo2ym5NToCP6UM+KSe93aln4BcM/24mXChYAbXJQ5Bqq/pIzsGs/pKetQN+vwvMxLOwTvpcsCJBXaa981RKML6xj9l/UZ7IIq1HSEKMvPLxZMWdu0Ut8DkCd5F4nOw9Wgml2uYpDCj5LLCrQQ9ChdOMz8hz6SighhNlRpPkvPaet3OXxr/ytFMu7j7vv06CaEnuMMiY2aTWN1Imin9eHAylIqFHta/3gFfQSWt9jXM7owkBLKL7ATzhaAn+fjNupw== arxcruz@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDS4Fn6k4deCnIlOtLWqZJyksbepjQt04j8Ed8CGx9EKkj0fKiAxiI4TadXQYPuNHMixZy4Nevjb6aDhL5Z906TfvNHKUrjrG7G26a0k8vdc61NEQ7FmcGMWRLwwc6ReDO7lFpzYKBMk4YqfWgBuGU/K6WLKiVW2cVvwIuGIaYrE1OiiX0iVUUk7KApXlDJMXn7qjSYynfO4mF629NIp8FJal38+Kv+HA+0QkE5Y2xXnzD4Lar5+keymiCHRntPppXHeLIRzbt0gxC7v3L72hpQ3BTBEzwHpeS8KY+SX1y5lRMN45thCHfJqGmARJREDjBvWG8JXOPmVIKQtZmVcD5b mandreou@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDS4Fn6k4deCnIlOtLWqZJyksbepjQt04j8Ed8CGx9EKkj0fKiAxiI4TadXQYPuNHMixZy4Nevjb6aDhL5Z906TfvNHKUrjrG7G26a0k8vdc61NEQ7FmcGMWRLwwc6ReDO7lFpzYKBMk4YqfWgBuGU/K6WLKiVW2cVvwIuGIaYrE1OiiX0iVUUk7KApXlDJMXn7qjSYynfO4mF629NIp8FJal38+Kv+HA+0QkE5Y2xXnzD4Lar5+keymiCHRntPppXHeLIRzbt0gxC7v3L72hpQ3BTBEzwHpeS8KY+SX1y5lRMN45thCHfJqGmARJREDjBvWG8JXOPmVIKQtZmVcD5b mandreou@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDS4Fn6k4deCnIlOtLWqZJyksbepjQt04j8Ed8CGx9EKkj0fKiAxiI4TadXQYPuNHMixZy4Nevjb6aDhL5Z906TfvNHKUrjrG7G26a0k8vdc61NEQ7FmcGMWRLwwc6ReDO7lFpzYKBMk4YqfWgBuGU/K6WLKiVW2cVvwIuGIaYrE1OiiX0iVUUk7KApXlDJMXn7qjSYynfO4mF629NIp8FJal38+Kv+HA+0QkE5Y2xXnzD4Lar5+keymiCHRntPppXHeLIRzbt0gxC7v3L72hpQ3BTBEzwHpeS8KY+SX1y5lRMN45thCHfJqGmARJREDjBvWG8JXOPmVIKQtZmVcD5b mandreou@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9MiLfy30deHA7xPOAlew5qUq3UP2gmRMYJi8PtkjFB20/DKeWwWNnkZPqP9AayruRoo51SIiVg870gbZE2jYl+Ncx/FYDe56JeC3ySZsXoAVkC9bP7gkOGqOmJjirvAgPMI7bogVz8i+66Q4Ar7OKTp3762G4IuWPPEg4ce4Y7lx9qWocZapHYq4cYKMxrOZ7SEbFSATBbe2bPZAPKTw8do/Eny+Hq/LkHFhIeyra6cqTFQYShr+zPln0Cr+ro/pDX3bB+1ubFgTpjpkkkQsLhDfR6cCdCWM2lgnS3BTtYj5Ct9/JRPR5YOphqZz+uB+OEu2IL68hmU9vNTth1KeX rlandy@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9MiLfy30deHA7xPOAlew5qUq3UP2gmRMYJi8PtkjFB20/DKeWwWNnkZPqP9AayruRoo51SIiVg870gbZE2jYl+Ncx/FYDe56JeC3ySZsXoAVkC9bP7gkOGqOmJjirvAgPMI7bogVz8i+66Q4Ar7OKTp3762G4IuWPPEg4ce4Y7lx9qWocZapHYq4cYKMxrOZ7SEbFSATBbe2bPZAPKTw8do/Eny+Hq/LkHFhIeyra6cqTFQYShr+zPln0Cr+ro/pDX3bB+1ubFgTpjpkkkQsLhDfR6cCdCWM2lgnS3BTtYj5Ct9/JRPR5YOphqZz+uB+OEu2IL68hmU9vNTth1KeX rlandy@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9MiLfy30deHA7xPOAlew5qUq3UP2gmRMYJi8PtkjFB20/DKeWwWNnkZPqP9AayruRoo51SIiVg870gbZE2jYl+Ncx/FYDe56JeC3ySZsXoAVkC9bP7gkOGqOmJjirvAgPMI7bogVz8i+66Q4Ar7OKTp3762G4IuWPPEg4ce4Y7lx9qWocZapHYq4cYKMxrOZ7SEbFSATBbe2bPZAPKTw8do/Eny+Hq/LkHFhIeyra6cqTFQYShr+zPln0Cr+ro/pDX3bB+1ubFgTpjpkkkQsLhDfR6cCdCWM2lgnS3BTtYj5Ct9/JRPR5YOphqZz+uB+OEu2IL68hmU9vNTth1KeX rlandy@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFCbgz8gdERiJlk2IKOtkjQxEXejrio6ZYMJAVJYpOIp raukadah@gmail.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFCbgz8gdERiJlk2IKOtkjQxEXejrio6ZYMJAVJYpOIp raukadah@gmail.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFCbgz8gdERiJlk2IKOtkjQxEXejrio6ZYMJAVJYpOIp raukadah@gmail.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBqb3Q/9uDf4LmihQ7xeJ9gA/STIQUFPSfyyV0m8AoQi bshewale@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBqb3Q/9uDf4LmihQ7xeJ9gA/STIQUFPSfyyV0m8AoQi bshewale@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBqb3Q/9uDf4LmihQ7xeJ9gA/STIQUFPSfyyV0m8AoQi bshewale@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0I8QqQx0Az2ysJt2JuffucLijhBqnsXKEIx5GyHwxVULROa8VtNFXUDH6ZKZavhiMcmfHB2+TBTda+lDP4FldYj06dGmzCY+IYGa+uDRdxHNGYjvCfLFcmLlzRK6fNbTcui+KlUFUdKe0fb9CRoGKyhlJD5GRkM1Dv+Yb6Bj+RNnmm1fVGYxzmrD2utvffYEb0SZGWxq2R9gefx1q/3wCGjeqvufEV+AskPhVGc5T7t9eyZ4qmslkLh1/nMuaIBFcr9AUACRajsvk6mXrAN1g3HlBf2gQlhi1UEyfbqIQvzzFtsbLDlSum/KmKjy818GzvWjERfQ0VkGzCd9bSLVL dviroel@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0I8QqQx0Az2ysJt2JuffucLijhBqnsXKEIx5GyHwxVULROa8VtNFXUDH6ZKZavhiMcmfHB2+TBTda+lDP4FldYj06dGmzCY+IYGa+uDRdxHNGYjvCfLFcmLlzRK6fNbTcui+KlUFUdKe0fb9CRoGKyhlJD5GRkM1Dv+Yb6Bj+RNnmm1fVGYxzmrD2utvffYEb0SZGWxq2R9gefx1q/3wCGjeqvufEV+AskPhVGc5T7t9eyZ4qmslkLh1/nMuaIBFcr9AUACRajsvk6mXrAN1g3HlBf2gQlhi1UEyfbqIQvzzFtsbLDlSum/KmKjy818GzvWjERfQ0VkGzCd9bSLVL dviroel@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0I8QqQx0Az2ysJt2JuffucLijhBqnsXKEIx5GyHwxVULROa8VtNFXUDH6ZKZavhiMcmfHB2+TBTda+lDP4FldYj06dGmzCY+IYGa+uDRdxHNGYjvCfLFcmLlzRK6fNbTcui+KlUFUdKe0fb9CRoGKyhlJD5GRkM1Dv+Yb6Bj+RNnmm1fVGYxzmrD2utvffYEb0SZGWxq2R9gefx1q/3wCGjeqvufEV+AskPhVGc5T7t9eyZ4qmslkLh1/nMuaIBFcr9AUACRajsvk6mXrAN1g3HlBf2gQlhi1UEyfbqIQvzzFtsbLDlSum/KmKjy818GzvWjERfQ0VkGzCd9bSLVL dviroel@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDLOQd4ZLtkZXQGY6UwAr/06ppWQK4fDO3HaqxPk98csyOCBXsliSKK39Bso828+5srIXiW7aI6aC9P5mwi4mUZlGPfJlQbfrcGvY+b/SocuvaGK+1RrHLoJCT52LBhwgrzlXio2jeksZeein8iaTrhsPrOAs7KggIL/rB9hEiB3NaOPWhhoCP4vlW6MEMExGcqB/1FVxXFBPnLkEyW0Lk7ycVflZl2ocRxbfjZi0+tI1Wlinp8PvSQSc/WVrAcDgKjc/mB4ODPOyYy3G8FHgfMsrXSDEyjBKgLKMsdCrAUcqJQWjkqXleXSYOV4q3pzL+9umK+q/e3P/bIoSFQzmJKTU1eDfuvPXmow9F5H54fii/Da7ezlMJ+wPGHJrRAkmzvMbALy7xwswLhZMkOGNtRcPqaKYRmIBKpw3o6bCTtcNUHOtOQnzwY8JzrM2eBWJBXAANYw+9/ho80JIiwhg29CFNpVBuHbql2YxJQNrnl90guN65rYNpDxdIluweyUf8= anbanerj@kaermorhen",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDLOQd4ZLtkZXQGY6UwAr/06ppWQK4fDO3HaqxPk98csyOCBXsliSKK39Bso828+5srIXiW7aI6aC9P5mwi4mUZlGPfJlQbfrcGvY+b/SocuvaGK+1RrHLoJCT52LBhwgrzlXio2jeksZeein8iaTrhsPrOAs7KggIL/rB9hEiB3NaOPWhhoCP4vlW6MEMExGcqB/1FVxXFBPnLkEyW0Lk7ycVflZl2ocRxbfjZi0+tI1Wlinp8PvSQSc/WVrAcDgKjc/mB4ODPOyYy3G8FHgfMsrXSDEyjBKgLKMsdCrAUcqJQWjkqXleXSYOV4q3pzL+9umK+q/e3P/bIoSFQzmJKTU1eDfuvPXmow9F5H54fii/Da7ezlMJ+wPGHJrRAkmzvMbALy7xwswLhZMkOGNtRcPqaKYRmIBKpw3o6bCTtcNUHOtOQnzwY8JzrM2eBWJBXAANYw+9/ho80JIiwhg29CFNpVBuHbql2YxJQNrnl90guN65rYNpDxdIluweyUf8= anbanerj@kaermorhen",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDLOQd4ZLtkZXQGY6UwAr/06ppWQK4fDO3HaqxPk98csyOCBXsliSKK39Bso828+5srIXiW7aI6aC9P5mwi4mUZlGPfJlQbfrcGvY+b/SocuvaGK+1RrHLoJCT52LBhwgrzlXio2jeksZeein8iaTrhsPrOAs7KggIL/rB9hEiB3NaOPWhhoCP4vlW6MEMExGcqB/1FVxXFBPnLkEyW0Lk7ycVflZl2ocRxbfjZi0+tI1Wlinp8PvSQSc/WVrAcDgKjc/mB4ODPOyYy3G8FHgfMsrXSDEyjBKgLKMsdCrAUcqJQWjkqXleXSYOV4q3pzL+9umK+q/e3P/bIoSFQzmJKTU1eDfuvPXmow9F5H54fii/Da7ezlMJ+wPGHJrRAkmzvMbALy7xwswLhZMkOGNtRcPqaKYRmIBKpw3o6bCTtcNUHOtOQnzwY8JzrM2eBWJBXAANYw+9/ho80JIiwhg29CFNpVBuHbql2YxJQNrnl90guN65rYNpDxdIluweyUf8= anbanerj@kaermorhen"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC3VwV8Im9kRm49lt3tM36hj4Zv27FxGo4C1Q/0jqhzFmHY7RHbmeRr8ObhwWoHjXSozKWg8FL5ER0z3hTwL0W6lez3sL7hUaCmSuZmG5Hnl3x4vTSxDI9JZ/Y65rtYiiWQo2fC5xJhU/4+0e5e/pseCm8cKRSu+SaxhO+sd6FDojA2x1BzOzKiQRDy/1zWGp/cZkxcEuB1wHI5LMzN03c67vmbu+fhZRAUO4dQkvcnj2LrhQtpa+ytvnSjr8icMDosf1OsbSffwZFyHB/hfWGAfe0eIeSA2XPraxiPknXxiPKx2MJsaUTYbsZcm3EjFdHBBMumw5rBI74zLrMRvCO9GwBEmGT4rFng1nP+yw5DB8sn2zqpOsPg1LYRwCPOUveC13P6pgsZZPh812e8v5EKnETct+5XI3dVpdw6CnNiLwAyVAF15DJvBGT/u1k0Myg/bQn+Gv9k2MSj6LvQmf6WbZu2Wgjm30z3FyCneBqTL7mLF19YXzeC0ufHz5pnO1E= dasm@fedora",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC3VwV8Im9kRm49lt3tM36hj4Zv27FxGo4C1Q/0jqhzFmHY7RHbmeRr8ObhwWoHjXSozKWg8FL5ER0z3hTwL0W6lez3sL7hUaCmSuZmG5Hnl3x4vTSxDI9JZ/Y65rtYiiWQo2fC5xJhU/4+0e5e/pseCm8cKRSu+SaxhO+sd6FDojA2x1BzOzKiQRDy/1zWGp/cZkxcEuB1wHI5LMzN03c67vmbu+fhZRAUO4dQkvcnj2LrhQtpa+ytvnSjr8icMDosf1OsbSffwZFyHB/hfWGAfe0eIeSA2XPraxiPknXxiPKx2MJsaUTYbsZcm3EjFdHBBMumw5rBI74zLrMRvCO9GwBEmGT4rFng1nP+yw5DB8sn2zqpOsPg1LYRwCPOUveC13P6pgsZZPh812e8v5EKnETct+5XI3dVpdw6CnNiLwAyVAF15DJvBGT/u1k0Myg/bQn+Gv9k2MSj6LvQmf6WbZu2Wgjm30z3FyCneBqTL7mLF19YXzeC0ufHz5pnO1E= dasm@fedora",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC3VwV8Im9kRm49lt3tM36hj4Zv27FxGo4C1Q/0jqhzFmHY7RHbmeRr8ObhwWoHjXSozKWg8FL5ER0z3hTwL0W6lez3sL7hUaCmSuZmG5Hnl3x4vTSxDI9JZ/Y65rtYiiWQo2fC5xJhU/4+0e5e/pseCm8cKRSu+SaxhO+sd6FDojA2x1BzOzKiQRDy/1zWGp/cZkxcEuB1wHI5LMzN03c67vmbu+fhZRAUO4dQkvcnj2LrhQtpa+ytvnSjr8icMDosf1OsbSffwZFyHB/hfWGAfe0eIeSA2XPraxiPknXxiPKx2MJsaUTYbsZcm3EjFdHBBMumw5rBI74zLrMRvCO9GwBEmGT4rFng1nP+yw5DB8sn2zqpOsPg1LYRwCPOUveC13P6pgsZZPh812e8v5EKnETct+5XI3dVpdw6CnNiLwAyVAF15DJvBGT/u1k0Myg/bQn+Gv9k2MSj6LvQmf6WbZu2Wgjm30z3FyCneBqTL7mLF19YXzeC0ufHz5pnO1E= dasm@fedora"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHUnwjB20UKmsSed9X73eGNV5AOEFccQ3NYrRW776pEk cjeanner",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHUnwjB20UKmsSed9X73eGNV5AOEFccQ3NYrRW776pEk cjeanner",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHUnwjB20UKmsSed9X73eGNV5AOEFccQ3NYrRW776pEk cjeanner"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDercCMGn8rW1C4P67tHgtflPdTeXlpyUJYH+6XDd2lR jgilaber@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDercCMGn8rW1C4P67tHgtflPdTeXlpyUJYH+6XDd2lR jgilaber@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDercCMGn8rW1C4P67tHgtflPdTeXlpyUJYH+6XDd2lR jgilaber@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAMI6kkg9Wg0sG7jIJmyZemEBwUn1yzNpQQd3gnulOmZ adrianfuscoarnejo@gmail.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAMI6kkg9Wg0sG7jIJmyZemEBwUn1yzNpQQd3gnulOmZ adrianfuscoarnejo@gmail.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAMI6kkg9Wg0sG7jIJmyZemEBwUn1yzNpQQd3gnulOmZ adrianfuscoarnejo@gmail.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPijwpQu/3jhhhBZInXNOLEH57DrknPc3PLbsRvYyJIFzwYjX+WD4a7+nGnMYS42MuZk6TJcVqgnqofVx4isoD4= ramishra@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPijwpQu/3jhhhBZInXNOLEH57DrknPc3PLbsRvYyJIFzwYjX+WD4a7+nGnMYS42MuZk6TJcVqgnqofVx4isoD4= ramishra@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPijwpQu/3jhhhBZInXNOLEH57DrknPc3PLbsRvYyJIFzwYjX+WD4a7+nGnMYS42MuZk6TJcVqgnqofVx4isoD4= ramishra@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICWBreHW95Wz2Toz5YwCGQwFcUG8oFYkienDh9tntmDc ralfieri@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICWBreHW95Wz2Toz5YwCGQwFcUG8oFYkienDh9tntmDc ralfieri@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICWBreHW95Wz2Toz5YwCGQwFcUG8oFYkienDh9tntmDc ralfieri@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDK0iKdi8jQTpQrDdLVH/AAgLVYyTXF7AQ1gjc/5uT3t ykarel@yatinkarel",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDK0iKdi8jQTpQrDdLVH/AAgLVYyTXF7AQ1gjc/5uT3t ykarel@yatinkarel",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDK0iKdi8jQTpQrDdLVH/AAgLVYyTXF7AQ1gjc/5uT3t ykarel@yatinkarel"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF/V/cLotA6LZeO32VL45Hd78skuA2lJA425Sm2LlQeZ fmount@horcrux",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF/V/cLotA6LZeO32VL45Hd78skuA2lJA425Sm2LlQeZ fmount@horcrux",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF/V/cLotA6LZeO32VL45Hd78skuA2lJA425Sm2LlQeZ fmount@horcrux"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDa7QCjuDMVmRPo1rREbGwzYeBCYVN+Ou/3WKXZEC6Sr",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDa7QCjuDMVmRPo1rREbGwzYeBCYVN+Ou/3WKXZEC6Sr",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDa7QCjuDMVmRPo1rREbGwzYeBCYVN+Ou/3WKXZEC6Sr"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCfNtF7NvKl915TGsGGoseUb06Hj8L/S4toWf0hExeY+F00woL6NvBlJD0nDct+P5a22I4EhvoQCRQ8reaPCm1lybR3uiRIJsj+8zkVvLwby9LXzfZorlNG9ofjd00FEmB09uW/YvTl6Q9XwwwX6tInzIOv3TMqTHHGOL74ibbj8J/FJR0cFEyj0z4WQRvtkh32xAHl83gbuINryMt0sqRI+clj2381NKL55DRLQrVw0gsfqqxiHAnXg21qWmc4J+b9e9kiuAFQjcjwTVkwJCcg3xbPwC/qokYRby/Y5S40UUd7/jEARGXT7RZgpzTuDd1oZiCVrnrqJNPaMNdVv5MLeFdf1B7iIe5aa/fGouX7AO4SdKhZUdnJmCFAGvjC6S3JMZ2wAcUl+OHnssfmdj7XL50cLo27vjuzMtLAgSqi6N99m92WCF2s8J9aVzszX7Xz9OKZCeGsiVJp3/NdABKzSEAyM9xBD/5Vho894Sav+otpySHe3p6RUTgbB5Zu8VyZRZ/UtB3ueXxyo764yrc6qWIDqrehm84Xm9g+/jpIBzGPl07NUNJpdt/6Sgf9RIKXw/7XypO5yZfUcuFNGTxLfqjTNrtgLZNcjfav6sSdVXVcMPL//XNuRdKmVFaO76eV/oGMQGr1fGcCD+N+CpI7+Q+fCNB6VFWG4nZFuI/Iuw== averdagu@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCfNtF7NvKl915TGsGGoseUb06Hj8L/S4toWf0hExeY+F00woL6NvBlJD0nDct+P5a22I4EhvoQCRQ8reaPCm1lybR3uiRIJsj+8zkVvLwby9LXzfZorlNG9ofjd00FEmB09uW/YvTl6Q9XwwwX6tInzIOv3TMqTHHGOL74ibbj8J/FJR0cFEyj0z4WQRvtkh32xAHl83gbuINryMt0sqRI+clj2381NKL55DRLQrVw0gsfqqxiHAnXg21qWmc4J+b9e9kiuAFQjcjwTVkwJCcg3xbPwC/qokYRby/Y5S40UUd7/jEARGXT7RZgpzTuDd1oZiCVrnrqJNPaMNdVv5MLeFdf1B7iIe5aa/fGouX7AO4SdKhZUdnJmCFAGvjC6S3JMZ2wAcUl+OHnssfmdj7XL50cLo27vjuzMtLAgSqi6N99m92WCF2s8J9aVzszX7Xz9OKZCeGsiVJp3/NdABKzSEAyM9xBD/5Vho894Sav+otpySHe3p6RUTgbB5Zu8VyZRZ/UtB3ueXxyo764yrc6qWIDqrehm84Xm9g+/jpIBzGPl07NUNJpdt/6Sgf9RIKXw/7XypO5yZfUcuFNGTxLfqjTNrtgLZNcjfav6sSdVXVcMPL//XNuRdKmVFaO76eV/oGMQGr1fGcCD+N+CpI7+Q+fCNB6VFWG4nZFuI/Iuw== averdagu@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCfNtF7NvKl915TGsGGoseUb06Hj8L/S4toWf0hExeY+F00woL6NvBlJD0nDct+P5a22I4EhvoQCRQ8reaPCm1lybR3uiRIJsj+8zkVvLwby9LXzfZorlNG9ofjd00FEmB09uW/YvTl6Q9XwwwX6tInzIOv3TMqTHHGOL74ibbj8J/FJR0cFEyj0z4WQRvtkh32xAHl83gbuINryMt0sqRI+clj2381NKL55DRLQrVw0gsfqqxiHAnXg21qWmc4J+b9e9kiuAFQjcjwTVkwJCcg3xbPwC/qokYRby/Y5S40UUd7/jEARGXT7RZgpzTuDd1oZiCVrnrqJNPaMNdVv5MLeFdf1B7iIe5aa/fGouX7AO4SdKhZUdnJmCFAGvjC6S3JMZ2wAcUl+OHnssfmdj7XL50cLo27vjuzMtLAgSqi6N99m92WCF2s8J9aVzszX7Xz9OKZCeGsiVJp3/NdABKzSEAyM9xBD/5Vho894Sav+otpySHe3p6RUTgbB5Zu8VyZRZ/UtB3ueXxyo764yrc6qWIDqrehm84Xm9g+/jpIBzGPl07NUNJpdt/6Sgf9RIKXw/7XypO5yZfUcuFNGTxLfqjTNrtgLZNcjfav6sSdVXVcMPL//XNuRdKmVFaO76eV/oGMQGr1fGcCD+N+CpI7+Q+fCNB6VFWG4nZFuI/Iuw== averdagu@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDq8l27xI+QlQVdS4djp9ogSoyrNE2+Ox6vKPdhSNL1J3PE5w+WCSvMz9A5gnNuH810zwbekEApbxTze/gLQJwBHA52CChfURpXrFaxY7ePXRElwKAL3mJfzBWY/c5jnNL9TCVmFJTGZkFZP3Nh+BMgZvL6xBkt3WKm6Uq18qzd9XeKcZusrA+O+uLv1fVeQnadY9RIqOCyeFYCzLWrUfTyE8x/XG0hAWIM7qpnF2cALQS2h9n4hW5ybiUN790H08wf9hFwEf5nxY9Z9dVkPFQiTSGKNBzmnCXU9skxS/xhpFjJ5duGSZdtAHe9O+nGZm9c67hxgtf8e5PDuqAdXEv2cf6e3VBAt+Bz8EKI3yosTj0oZHfwr42Yzb1l/SKy14Rggsrc9KAQlrGXan6+u2jcQqqx7l+SWmnpFiWTV9u5cWj2IgOhApOitmRBPYqk9rE2usfO0hLn/Pj/R/Nau4803e1/EikdLE7Ps95s9mX5jRDjAoUa2JwFF5RsVFyL910= ashigupt@ashigupt.remote.csb",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDq8l27xI+QlQVdS4djp9ogSoyrNE2+Ox6vKPdhSNL1J3PE5w+WCSvMz9A5gnNuH810zwbekEApbxTze/gLQJwBHA52CChfURpXrFaxY7ePXRElwKAL3mJfzBWY/c5jnNL9TCVmFJTGZkFZP3Nh+BMgZvL6xBkt3WKm6Uq18qzd9XeKcZusrA+O+uLv1fVeQnadY9RIqOCyeFYCzLWrUfTyE8x/XG0hAWIM7qpnF2cALQS2h9n4hW5ybiUN790H08wf9hFwEf5nxY9Z9dVkPFQiTSGKNBzmnCXU9skxS/xhpFjJ5duGSZdtAHe9O+nGZm9c67hxgtf8e5PDuqAdXEv2cf6e3VBAt+Bz8EKI3yosTj0oZHfwr42Yzb1l/SKy14Rggsrc9KAQlrGXan6+u2jcQqqx7l+SWmnpFiWTV9u5cWj2IgOhApOitmRBPYqk9rE2usfO0hLn/Pj/R/Nau4803e1/EikdLE7Ps95s9mX5jRDjAoUa2JwFF5RsVFyL910= ashigupt@ashigupt.remote.csb",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDq8l27xI+QlQVdS4djp9ogSoyrNE2+Ox6vKPdhSNL1J3PE5w+WCSvMz9A5gnNuH810zwbekEApbxTze/gLQJwBHA52CChfURpXrFaxY7ePXRElwKAL3mJfzBWY/c5jnNL9TCVmFJTGZkFZP3Nh+BMgZvL6xBkt3WKm6Uq18qzd9XeKcZusrA+O+uLv1fVeQnadY9RIqOCyeFYCzLWrUfTyE8x/XG0hAWIM7qpnF2cALQS2h9n4hW5ybiUN790H08wf9hFwEf5nxY9Z9dVkPFQiTSGKNBzmnCXU9skxS/xhpFjJ5duGSZdtAHe9O+nGZm9c67hxgtf8e5PDuqAdXEv2cf6e3VBAt+Bz8EKI3yosTj0oZHfwr42Yzb1l/SKy14Rggsrc9KAQlrGXan6+u2jcQqqx7l+SWmnpFiWTV9u5cWj2IgOhApOitmRBPYqk9rE2usfO0hLn/Pj/R/Nau4803e1/EikdLE7Ps95s9mX5jRDjAoUa2JwFF5RsVFyL910= ashigupt@ashigupt.remote.csb"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOKLl0NYKwoZ/JY5KeZU8VwRAggeOxqQJeoqp3dsAaY9",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOKLl0NYKwoZ/JY5KeZU8VwRAggeOxqQJeoqp3dsAaY9",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOKLl0NYKwoZ/JY5KeZU8VwRAggeOxqQJeoqp3dsAaY9"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIASASQOH2BcOyLKuuDOdWZlPi2orcjcA8q4400T73DLH evallesp@fedora",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIASASQOH2BcOyLKuuDOdWZlPi2orcjcA8q4400T73DLH evallesp@fedora",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIASASQOH2BcOyLKuuDOdWZlPi2orcjcA8q4400T73DLH evallesp@fedora"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILeBWlamUph+jRKV2qrx1PGU7vWuGIt5+z9k96I8WehW amsinha@amsinha-mac",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILeBWlamUph+jRKV2qrx1PGU7vWuGIt5+z9k96I8WehW amsinha@amsinha-mac",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILeBWlamUph+jRKV2qrx1PGU7vWuGIt5+z9k96I8WehW amsinha@amsinha-mac"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIANvVgvJBlK3gb1yz5uef/JqIGq4HLEmY2dYA8e37swb morenod@redhat-laptop",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIANvVgvJBlK3gb1yz5uef/JqIGq4HLEmY2dYA8e37swb morenod@redhat-laptop",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIANvVgvJBlK3gb1yz5uef/JqIGq4HLEmY2dYA8e37swb morenod@redhat-laptop"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDZdI7t1cxYx65heVI24HTV4F7oQLW1zyfxHreL2TIJKxjyrUUKIFEUmTutcBlJRLNT2Eoix6x1sOw9YrchloCLcn//SGfTElr9mSc5jbjb7QXEU+zJMhtxyEJ1Po3CUGnj7ckiIXw7wcawZtrEOAQ9pH3ExYCJcEMiyNjRQZCxT3tPK+S4B95EWh5Fsrz9CkwpjNRPPH7LigCeQTM3Wc7r97utAslBUUvYceDSLA7rMgkitJE38b7rZBeYzsGQ8YYUBjTCtehqQXxCRjizbHWaaZkBU+N3zkKB6n/iCNGIO690NK7A/qb6msTijiz1PeuM8ThOsi9qXnbX5v0PoTpcFSojV7NHAQ71f0XXuS43FhZctT+Dcx44dT8Fb5vJu2cJGrk+qF8ZgJYNpRS7gPg0EG2EqjK7JMf9ULdjSu0r+KlqIAyLvtzT4eOnQipoKlb/WG5D/0ohKv7OMQ352ggfkBFIQsRXyyTCT98Ft9juqPuahi3CAQmP4H9dyE+7+Kz437PEtsxLmfm6naNmWi7Ee1DqWPwS8rEajsm4sNM4wW9gdBboJQtc0uZw0DfLj1I9r3Mc8Ol0jYtz0yNQDSzVLrGCaJlC311trU70tZ+ZkAVV6Mn8lOhSbj1cK0lvSr6ZK4dgqGl3I1eTZJJhbLNdg7UOVaiRx9543+C/p/As7w== brjackma@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDZdI7t1cxYx65heVI24HTV4F7oQLW1zyfxHreL2TIJKxjyrUUKIFEUmTutcBlJRLNT2Eoix6x1sOw9YrchloCLcn//SGfTElr9mSc5jbjb7QXEU+zJMhtxyEJ1Po3CUGnj7ckiIXw7wcawZtrEOAQ9pH3ExYCJcEMiyNjRQZCxT3tPK+S4B95EWh5Fsrz9CkwpjNRPPH7LigCeQTM3Wc7r97utAslBUUvYceDSLA7rMgkitJE38b7rZBeYzsGQ8YYUBjTCtehqQXxCRjizbHWaaZkBU+N3zkKB6n/iCNGIO690NK7A/qb6msTijiz1PeuM8ThOsi9qXnbX5v0PoTpcFSojV7NHAQ71f0XXuS43FhZctT+Dcx44dT8Fb5vJu2cJGrk+qF8ZgJYNpRS7gPg0EG2EqjK7JMf9ULdjSu0r+KlqIAyLvtzT4eOnQipoKlb/WG5D/0ohKv7OMQ352ggfkBFIQsRXyyTCT98Ft9juqPuahi3CAQmP4H9dyE+7+Kz437PEtsxLmfm6naNmWi7Ee1DqWPwS8rEajsm4sNM4wW9gdBboJQtc0uZw0DfLj1I9r3Mc8Ol0jYtz0yNQDSzVLrGCaJlC311trU70tZ+ZkAVV6Mn8lOhSbj1cK0lvSr6ZK4dgqGl3I1eTZJJhbLNdg7UOVaiRx9543+C/p/As7w== brjackma@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDZdI7t1cxYx65heVI24HTV4F7oQLW1zyfxHreL2TIJKxjyrUUKIFEUmTutcBlJRLNT2Eoix6x1sOw9YrchloCLcn//SGfTElr9mSc5jbjb7QXEU+zJMhtxyEJ1Po3CUGnj7ckiIXw7wcawZtrEOAQ9pH3ExYCJcEMiyNjRQZCxT3tPK+S4B95EWh5Fsrz9CkwpjNRPPH7LigCeQTM3Wc7r97utAslBUUvYceDSLA7rMgkitJE38b7rZBeYzsGQ8YYUBjTCtehqQXxCRjizbHWaaZkBU+N3zkKB6n/iCNGIO690NK7A/qb6msTijiz1PeuM8ThOsi9qXnbX5v0PoTpcFSojV7NHAQ71f0XXuS43FhZctT+Dcx44dT8Fb5vJu2cJGrk+qF8ZgJYNpRS7gPg0EG2EqjK7JMf9ULdjSu0r+KlqIAyLvtzT4eOnQipoKlb/WG5D/0ohKv7OMQ352ggfkBFIQsRXyyTCT98Ft9juqPuahi3CAQmP4H9dyE+7+Kz437PEtsxLmfm6naNmWi7Ee1DqWPwS8rEajsm4sNM4wW9gdBboJQtc0uZw0DfLj1I9r3Mc8Ol0jYtz0yNQDSzVLrGCaJlC311trU70tZ+ZkAVV6Mn8lOhSbj1cK0lvSr6ZK4dgqGl3I1eTZJJhbLNdg7UOVaiRx9543+C/p/As7w== brjackma@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKwedoZ0TWPJX/z/4TAbO/kKcDZOQVgRH0hAqrL5UCI1 vcastell@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKwedoZ0TWPJX/z/4TAbO/kKcDZOQVgRH0hAqrL5UCI1 vcastell@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKwedoZ0TWPJX/z/4TAbO/kKcDZOQVgRH0hAqrL5UCI1 vcastell@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEmv8sE8GCk6ZTPIqF0FQrttBdL3mq7rCm/IJy0xDFh7 michburk@redhat.com",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEmv8sE8GCk6ZTPIqF0FQrttBdL3mq7rCm/IJy0xDFh7 michburk@redhat.com",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEmv8sE8GCk6ZTPIqF0FQrttBdL3mq7rCm/IJy0xDFh7 michburk@redhat.com"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_public_key",
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "failed": false,
                                    "follow": false,
                                    "invocation": {
                                        "module_args": {
                                            "changed": true,
                                            "comment": null,
                                            "exclusive": false,
                                            "follow": false,
                                            "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICy6GpGEtwevXEEn4mmLR5lmSLe23dGgAvzkB9DMNbkf rsafrono@rsafrono",
                                            "key_options": null,
                                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                                            "manage_dir": true,
                                            "path": null,
                                            "state": "present",
                                            "user": "zuul",
                                            "validate_certs": true
                                        }
                                    },
                                    "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICy6GpGEtwevXEEn4mmLR5lmSLe23dGgAvzkB9DMNbkf rsafrono@rsafrono",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true,
                                    "zj_public_key": {
                                        "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICy6GpGEtwevXEEn4mmLR5lmSLe23dGgAvzkB9DMNbkf rsafrono@rsafrono"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-dfa0-c338-00000000000c",
                        "name": "add-authorized-keys",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-authorized-keys"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:32.006894Z",
                            "start": "2026-06-09T13:02:24.720291Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000000e",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "community.general.timezone",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "name": "UTC"
                                },
                                "before": {
                                    "name": "America/New_York"
                                }
                            },
                            "invocation": {
                                "module_args": {
                                    "hwclock": null,
                                    "name": "UTC"
                                }
                            },
                            "msg": "executed `/bin/timedatectl set-timezone UTC`"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:32.594155Z",
                            "start": "2026-06-09T13:02:32.025847Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000011",
                        "name": "Set timezone to UTC"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "mode": "0777",
                                    "path": "/etc/nodepool",
                                    "state": "directory"
                                },
                                "before": {
                                    "mode": "0755",
                                    "path": "/etc/nodepool",
                                    "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": 511,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/etc/nodepool",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0777",
                            "owner": "root",
                            "path": "/etc/nodepool",
                            "secontext": "unconfined_u:object_r:etc_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:32.864585Z",
                            "start": "2026-06-09T13:02:32.601565Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000012",
                        "name": "Create nodepool directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
                            "dest": "/etc/nodepool/sub_nodes",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "tmpbce8bgml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
                                    "content": null,
                                    "dest": "/etc/nodepool/sub_nodes",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010152.9559674-48-136739897785987/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "d41d8cd98f00b204e9800998ecf8427e",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "system_u:object_r:etc_t:s0",
                            "size": 0,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010152.9559674-48-136739897785987/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:33.610813Z",
                            "start": "2026-06-09T13:02:32.874806Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000013",
                        "name": "Create nodepool sub_nodes file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
                            "dest": "/etc/nodepool/sub_nodes_private",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "tmpb2163s6c",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
                                    "content": null,
                                    "dest": "/etc/nodepool/sub_nodes_private",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010153.6982894-57-233070968334361/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "d41d8cd98f00b204e9800998ecf8427e",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "system_u:object_r:etc_t:s0",
                            "size": 0,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010153.6982894-57-233070968334361/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:34.388687Z",
                            "start": "2026-06-09T13:02:33.618963Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000014",
                        "name": "Create nodepool sub_nodes_private file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "groups['subnodes'] is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:34.445159Z",
                            "start": "2026-06-09T13:02:34.396145Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000015",
                        "name": "Populate nodepool sub_nodes file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "groups['subnodes'] is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:34.494263Z",
                            "start": "2026-06-09T13:02:34.456642Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000016",
                        "name": "Populate nodepool sub_nodes_private file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": false,
                            "false_condition": "hostvars['primary'] is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:34.531313Z",
                            "start": "2026-06-09T13:02:34.503384Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000017",
                        "name": "Create nodepool primary file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "b9ea63fb38f50d3257ec076159ca59d9b4b7fe2c",
                            "dest": "/etc/nodepool/node_private",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "tmps55y4pxj",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "b9ea63fb38f50d3257ec076159ca59d9b4b7fe2c",
                                    "content": null,
                                    "dest": "/etc/nodepool/node_private",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010154.6222324-69-92036065304099/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "04c87d8b2940aa5bb314d9c4138db258",
                            "mode": "0644",
                            "owner": "root",
                            "secontext": "system_u:object_r:etc_t:s0",
                            "size": 13,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010154.6222324-69-92036065304099/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:35.319295Z",
                            "start": "2026-06-09T13:02:34.539789Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000018",
                        "name": "Create nodepool node_private for this node"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "cmd": [
                                        "cp",
                                        ".ssh/id_rsa",
                                        "/etc/nodepool/id_rsa"
                                    ],
                                    "delta": "0:00:00.005941",
                                    "end": "2026-06-09 13:02:35.766851",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "cp .ssh/id_rsa /etc/nodepool/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": "in-loop-ignore",
                                            "zuul_no_log": false,
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "item": "id_rsa",
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-06-09 13:02:35.760910",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zuul_log_id": "in-loop-ignore"
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "cmd": [
                                        "cp",
                                        ".ssh/id_rsa.pub",
                                        "/etc/nodepool/id_rsa.pub"
                                    ],
                                    "delta": "0:00:00.006358",
                                    "end": "2026-06-09 13:02:35.992624",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "cp .ssh/id_rsa.pub /etc/nodepool/id_rsa.pub",
                                            "_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": "in-loop-ignore",
                                            "zuul_no_log": false,
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "item": "id_rsa.pub",
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-06-09 13:02:35.986266",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:36.034227Z",
                            "start": "2026-06-09T13:02:35.328014Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-000000000019",
                        "name": "Copy ssh keys to nodepool directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "bdca1a77493d00fb51567671791f4aa30f66c2f0",
                            "dest": "/etc/sudoers.d/zuul-sudo-grep",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "tmp541xlyww",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "bdca1a77493d00fb51567671791f4aa30f66c2f0",
                                    "content": null,
                                    "dest": "/etc/sudoers.d/zuul-sudo-grep",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 288,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010156.1141074-81-92687994988282/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "c65b5e872e83f275574fd1c6d2ee9a11",
                            "mode": "0440",
                            "owner": "root",
                            "secontext": "system_u:object_r:etc_t:s0",
                            "size": 71,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010156.1141074-81-92687994988282/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:36.808154Z",
                            "start": "2026-06-09T13:02:36.041986Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000001a",
                        "name": "Add sudoers role for zuul-sudo-grep.sh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": false,
                            "cmd": [
                                "/usr/sbin/visudo",
                                "-c"
                            ],
                            "delta": "0:00:00.010343",
                            "end": "2026-06-09 13:02:37.127191",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/sbin/visudo -c",
                                    "_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": "0a580a2a-001b-dfa0-c338-00000000001b-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:02:37.116848",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/etc/sudoers: parsed OK\n/etc/sudoers.d/90-cloud-init-users: parsed OK\n/etc/sudoers.d/zuul: parsed OK\n/etc/sudoers.d/zuul-sudo-grep: parsed OK",
                            "stdout_lines": [
                                "/etc/sudoers: parsed OK",
                                "/etc/sudoers.d/90-cloud-init-users: parsed OK",
                                "/etc/sudoers.d/zuul: parsed OK",
                                "/etc/sudoers.d/zuul-sudo-grep: parsed OK"
                            ],
                            "zuul_log_id": "0a580a2a-001b-dfa0-c338-00000000001b-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:37.360415Z",
                            "start": "2026-06-09T13:02:36.842788Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000001b",
                        "name": "Validate sudoers config after edits"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": false,
                            "cmd": "env\n",
                            "delta": "0:00:00.007831",
                            "end": "2026-06-09 13:02:37.669503",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "env\n",
                                    "_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": "0a580a2a-001b-dfa0-c338-00000000001c-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:02:37.661672",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "SHELL=/bin/bash\nZUUL_PROJECT=openstack-k8s-operators/ci-framework\nZUUL_SHORT_PROJECT_NAME=ci-framework\nZUUL_CHANGES=openstack-k8s-operators/ci-framework:main:refs/changes/73/3773/8141be2c8c50fabf8119442736c4b0f3e95ba2c8\nPWD=/home/zuul\nZUUL_PIPELINE=github-check\nLOGNAME=zuul\nXDG_SESSION_TYPE=tty\n_=/usr/bin/env\nMOTD_SHOWN=pam\nHOME=/home/zuul\nLANG=en_US.UTF-8\nSSH_CONNECTION=38.102.83.47 41462 38.102.83.189 22\nTOX_TESTENV_PASSENV=ZUUL_UUID ZUUL_PROJECT ZUUL_SHORT_PROJECT_NAME ZUUL_PIPELINE ZUUL_VOTING WORKSPACE BUILD_TIMEOUT ZUUL_BRANCH ZUUL_CHANGES ZUUL_CHANGE_IDS ZUUL_CHANGE ZUUL_PATCHSET\nZUUL_CHANGE_IDS=3773,8141be2c8c50fabf8119442736c4b0f3e95ba2c8\nWORKSPACE=/home/zuul/workspace\nXDG_SESSION_CLASS=user\nSELINUX_ROLE_REQUESTED=\nLESSOPEN=||/usr/bin/lesspipe.sh %s\nUSER=zuul\nZUUL_VOTING=True\nBUILD_TIMEOUT=1800000\nSELINUX_USE_CURRENT_RANGE=\nSHLVL=1\nZUUL_PATCHSET=8141be2c8c50fabf8119442736c4b0f3e95ba2c8\nXDG_SESSION_ID=1\nZUUL_BRANCH=main\nXDG_RUNTIME_DIR=/run/user/1000\nSSH_CLIENT=38.102.83.47 41462 22\nDEBUGINFOD_URLS=https://debuginfod.centos.org/ \nDEBUGINFOD_IMA_CERT_PATH=/etc/keys/ima:\nwhich_declare=declare -f\nPATH=/home/zuul/.local/bin:/home/zuul/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin\nSELINUX_LEVEL_REQUESTED=\nZUUL_CHANGE=3773\nDBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus\nZUUL_UUID=3baddb9c77f44612873b572b5ad8a5f5\nBASH_FUNC_which%%=() {  ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@\n}",
                            "stdout_lines": [
                                "SHELL=/bin/bash",
                                "ZUUL_PROJECT=openstack-k8s-operators/ci-framework",
                                "ZUUL_SHORT_PROJECT_NAME=ci-framework",
                                "ZUUL_CHANGES=openstack-k8s-operators/ci-framework:main:refs/changes/73/3773/8141be2c8c50fabf8119442736c4b0f3e95ba2c8",
                                "PWD=/home/zuul",
                                "ZUUL_PIPELINE=github-check",
                                "LOGNAME=zuul",
                                "XDG_SESSION_TYPE=tty",
                                "_=/usr/bin/env",
                                "MOTD_SHOWN=pam",
                                "HOME=/home/zuul",
                                "LANG=en_US.UTF-8",
                                "SSH_CONNECTION=38.102.83.47 41462 38.102.83.189 22",
                                "TOX_TESTENV_PASSENV=ZUUL_UUID ZUUL_PROJECT ZUUL_SHORT_PROJECT_NAME ZUUL_PIPELINE ZUUL_VOTING WORKSPACE BUILD_TIMEOUT ZUUL_BRANCH ZUUL_CHANGES ZUUL_CHANGE_IDS ZUUL_CHANGE ZUUL_PATCHSET",
                                "ZUUL_CHANGE_IDS=3773,8141be2c8c50fabf8119442736c4b0f3e95ba2c8",
                                "WORKSPACE=/home/zuul/workspace",
                                "XDG_SESSION_CLASS=user",
                                "SELINUX_ROLE_REQUESTED=",
                                "LESSOPEN=||/usr/bin/lesspipe.sh %s",
                                "USER=zuul",
                                "ZUUL_VOTING=True",
                                "BUILD_TIMEOUT=1800000",
                                "SELINUX_USE_CURRENT_RANGE=",
                                "SHLVL=1",
                                "ZUUL_PATCHSET=8141be2c8c50fabf8119442736c4b0f3e95ba2c8",
                                "XDG_SESSION_ID=1",
                                "ZUUL_BRANCH=main",
                                "XDG_RUNTIME_DIR=/run/user/1000",
                                "SSH_CLIENT=38.102.83.47 41462 22",
                                "DEBUGINFOD_URLS=https://debuginfod.centos.org/ ",
                                "DEBUGINFOD_IMA_CERT_PATH=/etc/keys/ima:",
                                "which_declare=declare -f",
                                "PATH=/home/zuul/.local/bin:/home/zuul/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin",
                                "SELINUX_LEVEL_REQUESTED=",
                                "ZUUL_CHANGE=3773",
                                "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus",
                                "ZUUL_UUID=3baddb9c77f44612873b572b5ad8a5f5",
                                "BASH_FUNC_which%%=() {  ( alias;",
                                " eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@",
                                "}"
                            ],
                            "zuul_log_id": "0a580a2a-001b-dfa0-c338-00000000001c-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:37.918782Z",
                            "start": "2026-06-09T13:02:37.401682Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000001c",
                        "name": "Show the environment passed in to job shell scripts"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "false_condition": "ansible_user_id == \"zuul-worker\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:37.953710Z",
                            "start": "2026-06-09T13:02:37.926549Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000001d",
                        "name": "Workaround hardcoded /home/zuul/workspace in zuul_legacy_vars"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": false,
                            "false_condition": "ansible_user_id == \"zuul-worker\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:38.494082Z",
                            "start": "2026-06-09T13:02:37.984457Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000001e",
                        "name": "Symlink /home/zuul-worker/workspace"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/workspace",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/home/zuul/workspace",
                                    "state": "absent"
                                }
                            },
                            "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": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/workspace",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "zuul",
                            "path": "/home/zuul/workspace",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:38.771508Z",
                            "start": "2026-06-09T13:02:38.503491Z"
                        },
                        "id": "0a580a2a-001b-dfa0-c338-00000000001f",
                        "name": "Ensure legacy workspace directory"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 11,
            "failures": 0,
            "ignored": 0,
            "ok": 14,
            "rescued": 0,
            "skipped": 5,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "2",
    "phase": "pre",
    "playbook": "github.com/openstack-k8s-operators/ci-framework/ci/playbooks/e2e-prepare.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:04:55.248037Z",
                    "start": "2026-06-09T13:02:39.778507Z"
                },
                "id": "0a580a2a-001b-c423-a19e-000000000002",
                "name": "Run ci/playbooks/e2e-prepare.yml"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.include_role",
                            "changed": false,
                            "include_args": {
                                "name": "prepare-workspace"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:39.813589Z",
                            "start": "2026-06-09T13:02:39.791994Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000004",
                        "name": "Clone repos in the job workspace"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-c423-a19e-000000000035",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted/project_2/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:40.279746Z",
                            "start": "2026-06-09T13:02:39.831541Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000037",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "censored": "the output has been hidden due to the fact that 'no_log: true' was specified for this result",
                            "changed": true
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-c423-a19e-000000000035",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted/project_2/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:42.345376Z",
                            "start": "2026-06-09T13:02:40.286274Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000038",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/zuul-output/logs"
                                },
                                "before": {
                                    "path": "/home/zuul/zuul-output/logs"
                                }
                            },
                            "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": "0755",
                                    "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",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:02:42.760397Z",
                            "start": "2026-06-09T13:02:42.418362Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000005",
                        "name": "Create zuul-output directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.package",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "allow_downgrade": false,
                                    "allowerasing": false,
                                    "autoremove": false,
                                    "bugfix": false,
                                    "cacheonly": false,
                                    "conf_file": null,
                                    "disable_excludes": null,
                                    "disable_gpg_check": false,
                                    "disable_plugin": [],
                                    "disablerepo": [],
                                    "download_dir": null,
                                    "download_only": false,
                                    "enable_plugin": [],
                                    "enablerepo": [],
                                    "exclude": [],
                                    "install_repoquery": true,
                                    "install_weak_deps": true,
                                    "installroot": "/",
                                    "list": null,
                                    "lock_timeout": 30,
                                    "name": [
                                        "make",
                                        "python3",
                                        "podman",
                                        "python3-pip"
                                    ],
                                    "nobest": false,
                                    "releasever": null,
                                    "security": false,
                                    "skip_broken": false,
                                    "sslverify": true,
                                    "state": null,
                                    "update_cache": false,
                                    "update_only": false,
                                    "use_backend": "auto",
                                    "validate_certs": true
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results": [
                                "Installed: conmon-3:2.2.1-1.el9.x86_64",
                                "Installed: libslirp-4.4.0-8.el9.x86_64",
                                "Installed: protobuf-c-1.3.3-13.el9.x86_64",
                                "Installed: container-selinux-4:2.247.0-1.el9.noarch",
                                "Installed: shadow-utils-subid-2:4.9-16.el9.x86_64",
                                "Installed: containers-common-5:5.8-1.el9.x86_64",
                                "Installed: fuse-common-3.10.2-9.el9.x86_64",
                                "Installed: libnet-1.2-7.el9.x86_64",
                                "Installed: passt-0^20251210.gd04c480-3.el9.x86_64",
                                "Installed: nftables-1:1.0.9-7.el9.x86_64",
                                "Installed: passt-selinux-0^20251210.gd04c480-3.el9.noarch",
                                "Installed: yajl-2.1.0-25.el9.x86_64",
                                "Installed: fuse-overlayfs-1.16-2.el9.x86_64",
                                "Installed: fuse3-3.10.2-9.el9.x86_64",
                                "Installed: podman-6:5.8.2-1.el9.x86_64",
                                "Installed: aardvark-dns-2:1.17.0-1.el9.x86_64",
                                "Installed: netavark-2:1.17.2-1.el9.x86_64",
                                "Installed: criu-3.19-5.el9.x86_64",
                                "Installed: fuse3-libs-3.10.2-9.el9.x86_64",
                                "Installed: criu-libs-3.19-5.el9.x86_64",
                                "Installed: crun-1.27-2.el9.x86_64",
                                "Installed: slirp4netns-1.3.3-1.el9.x86_64"
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:03:31.795205Z",
                            "start": "2026-06-09T13:02:42.772408Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000006",
                        "name": "Install required packages"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "pip",
                                "--version"
                            ],
                            "delta": "0:00:00.710609",
                            "end": "2026-06-09 13:03:32.872781",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "pip --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": "0a580a2a-001b-c423-a19e-000000000007-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:03:32.162172",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "pip 21.3.1 from /usr/lib/python3.9/site-packages/pip (python 3.9)",
                            "stdout_lines": [
                                "pip 21.3.1 from /usr/lib/python3.9/site-packages/pip (python 3.9)"
                            ],
                            "zuul_log_id": "0a580a2a-001b-c423-a19e-000000000007-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:03:33.359158Z",
                            "start": "2026-06-09T13:03:31.838630Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000007",
                        "name": "Output pip related things"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "community.general.make",
                            "changed": true,
                            "chdir": "/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                            "command": "/usr/bin/gmake setup_molecule",
                            "file": null,
                            "invocation": {
                                "module_args": {
                                    "chdir": "/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                    "file": null,
                                    "jobs": null,
                                    "make": null,
                                    "params": null,
                                    "target": "setup_molecule",
                                    "targets": null
                                }
                            },
                            "jobs": null,
                            "params": null,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "bash scripts/setup_env 2>&1 | tee /tmp/setup_env.log\nallexport      \toff\nbraceexpand    \ton\nemacs          \toff\nerrexit        \ton\nerrtrace       \toff\nfunctrace      \toff\nhashall        \ton\nhistexpand     \toff\nhistory        \toff\nignoreeof      \toff\ninteractive-comments\ton\nkeyword        \toff\nmonitor        \toff\nnoclobber      \toff\nnoexec         \toff\nnoglob         \toff\nnolog          \toff\nnotify         \toff\nnounset        \ton\nonecmd         \toff\nphysical       \toff\npipefail       \ton\nposix          \toff\nprivileged     \toff\nverbose        \toff\nvi             \toff\nxtrace         \ton\n++++ readlink -f scripts/setup_env\n+++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/setup_env\n++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts\n+ export PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework\n+ PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework\n+ export ANSIBLE_SKIP_CONFLICT_CHECK=1\n+ ANSIBLE_SKIP_CONFLICT_CHECK=1\n+ USE_VENV=yes\n+ source /etc/os-release\n++ NAME='CentOS Stream'\n++ VERSION=9\n++ ID=centos\n++ ID_LIKE='rhel fedora'\n++ VERSION_ID=9\n++ PLATFORM_ID=platform:el9\n++ PRETTY_NAME='CentOS Stream 9'\n++ ANSI_COLOR='0;31'\n++ LOGO=fedora-logo-icon\n++ CPE_NAME=cpe:/o:centos:centos:9\n++ HOME_URL=https://centos.org/\n++ BUG_REPORT_URL=https://issues.redhat.com/\n++ REDHAT_SUPPORT_PRODUCT='Red Hat Enterprise Linux 9'\n++ REDHAT_SUPPORT_PRODUCT_VERSION='CentOS Stream'\n++ command -v dnf\n+ RHT_PKG_MGR=/usr/bin/dnf\n++ command -v python3\n+ PYTHON_EXEC=/usr/bin/python3\n++ dirname /usr/bin/python3\n+ SYSTEM_PIP=/usr/bin/pip3\n+ command -v gcc\n/usr/bin/gcc\n+ PIP_INSTALL_ARGUMENTS='-U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt'\n+ case ${USE_VENV} in\n+ PIP=/home/zuul/test-python/bin/pip3\n+ USE_VENV=yes\n+ echo\n\n+ echo\n\n+ echo\n\n+ sudo -k\n+ mkdir -p /home/zuul/ci/yum.repos.d\n+ cp /etc/ci/mirror_info.sh /home/zuul/ci\n+ cp -r '/opt/yum.repos.d/*' /home/zuul/ci/yum.repos.d\ncp: cannot stat '/opt/yum.repos.d/*': No such file or directory\n+ cp -r /etc/yum.repos.d/centos-addons.repo /etc/yum.repos.d/centos.repo /home/zuul/ci/yum.repos.d\n+ case ${USE_VENV} in\n+ :\n+ /usr/bin/python3 -m venv --upgrade-deps /home/zuul/test-python\nRequirement already satisfied: pip in /home/zuul/test-python/lib/python3.9/site-packages (21.3.1)\nCollecting pip\n  Downloading pip-26.0.1-py3-none-any.whl (1.8 MB)\nRequirement already satisfied: setuptools in /home/zuul/test-python/lib/python3.9/site-packages (53.0.0)\nCollecting setuptools\n  Downloading setuptools-82.0.1-py3-none-any.whl (1.0 MB)\nInstalling collected packages: setuptools, pip\n  Attempting uninstall: setuptools\n    Found existing installation: setuptools 53.0.0\n    Uninstalling setuptools-53.0.0:\n      Successfully uninstalled setuptools-53.0.0\n  Attempting uninstall: pip\n    Found existing installation: pip 21.3.1\n    Uninstalling pip-21.3.1:\n      Successfully uninstalled pip-21.3.1\nSuccessfully installed pip-26.0.1 setuptools-82.0.1\n+ [[ -d /home/zuul/.cache/pip/wheels ]]\n+ /home/zuul/test-python/bin/pip3 install pip setuptools bindep --upgrade\nRequirement already satisfied: pip in /home/zuul/test-python/lib/python3.9/site-packages (26.0.1)\nRequirement already satisfied: setuptools in /home/zuul/test-python/lib/python3.9/site-packages (82.0.1)\nCollecting bindep\n  Downloading bindep-2.14.0-py3-none-any.whl.metadata (11 kB)\nCollecting distro>=1.7 (from bindep)\n  Downloading distro-1.9.0-py3-none-any.whl.metadata (6.8 kB)\nCollecting packaging (from bindep)\n  Downloading packaging-26.2-py3-none-any.whl.metadata (3.5 kB)\nCollecting Parsley (from bindep)\n  Downloading Parsley-1.3-py2.py3-none-any.whl.metadata (4.1 kB)\nCollecting pbr>=2 (from bindep)\n  Downloading pbr-7.0.3-py2.py3-none-any.whl.metadata (3.8 kB)\nDownloading bindep-2.14.0-py3-none-any.whl (35 kB)\nDownloading distro-1.9.0-py3-none-any.whl (20 kB)\nDownloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)\nDownloading packaging-26.2-py3-none-any.whl (100 kB)\nDownloading Parsley-1.3-py2.py3-none-any.whl (88 kB)\nInstalling collected packages: Parsley, pbr, packaging, distro, bindep\n\nSuccessfully installed Parsley-1.3 bindep-2.14.0 distro-1.9.0 packaging-26.2 pbr-7.0.3\n+ /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/bindep-install\nallexport      \toff\nbraceexpand    \ton\nemacs          \toff\nerrexit        \ton\nerrtrace       \toff\nfunctrace      \toff\nhashall        \ton\nhistexpand     \toff\nhistory        \toff\nignoreeof      \toff\ninteractive-comments\ton\nkeyword        \toff\nmonitor        \toff\nnoclobber      \toff\nnoexec         \toff\nnoglob         \toff\nnolog          \toff\nnotify         \toff\nnounset        \ton\nonecmd         \toff\nphysical       \toff\npipefail       \ton\nposix          \toff\nprivileged     \toff\nverbose        \toff\nvi             \toff\nxtrace         \ton\n+++ readlink -f /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/bindep-install\n++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/bindep-install\n+ export BINDEP_FILE=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/../bindep.txt\n+ BINDEP_FILE=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/../bindep.txt\n+ source /etc/os-release\n++ NAME='CentOS Stream'\n++ VERSION=9\n++ ID=centos\n++ ID_LIKE='rhel fedora'\n++ VERSION_ID=9\n++ PLATFORM_ID=platform:el9\n++ PRETTY_NAME='CentOS Stream 9'\n++ ANSI_COLOR='0;31'\n++ LOGO=fedora-logo-icon\n++ CPE_NAME=cpe:/o:centos:centos:9\n++ HOME_URL=https://centos.org/\n++ BUG_REPORT_URL=https://issues.redhat.com/\n++ REDHAT_SUPPORT_PRODUCT='Red Hat Enterprise Linux 9'\n++ REDHAT_SUPPORT_PRODUCT_VERSION='CentOS Stream'\n++ command -v dnf\n+ RHT_PKG_MGR=/usr/bin/dnf\n+ BINDEP_PKGS=\n+ case ${USE_VENV:-'yes'} in\n++ /home/zuul/test-python/bin/bindep -b -f /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/../bindep.txt test\n++ true\n+ BINDEP_PKGS='python3-jmespath\npython3-libvirt\npython3-lxml\npython3-netaddr'\n+ [[ 61 -gt 0 ]]\n+ case \"${ID,,}\" in\n+ sudo /usr/bin/dnf install -y python3-jmespath python3-libvirt python3-lxml python3-netaddr\nLast metadata expiration check: 0:00:57 ago on Tue 09 Jun 2026 01:02:45 PM UTC.\nDependencies resolved.\n================================================================================\n Package                Arch        Version                Repository      Size\n================================================================================\nInstalling:\n python3-jmespath       noarch      1.0.1-1.el9            appstream       48 k\n python3-libvirt        x86_64      11.10.0-2.el9          appstream      347 k\n python3-lxml           x86_64      4.6.5-3.el9            appstream      1.2 M\n python3-netaddr        noarch      0.10.1-3.el9           appstream      1.5 M\nInstalling dependencies:\n cyrus-sasl-gssapi      x86_64      2.1.27-21.el9          baseos          27 k\n libvirt-libs           x86_64      11.10.0-12.el9         appstream      5.5 M\n\nTransaction Summary\n================================================================================\nInstall  6 Packages\n\nTotal download size: 8.7 M\nInstalled size: 45 M\nDownloading Packages:\n(1/6): cyrus-sasl-gssapi-2.1.27-21.el9.x86_64.r 391 kB/s |  27 kB     00:00    \n(2/6): python3-libvirt-11.10.0-2.el9.x86_64.rpm 7.0 MB/s | 347 kB     00:00    \n(3/6): python3-jmespath-1.0.1-1.el9.noarch.rpm  396 kB/s |  48 kB     00:00    \n(4/6): libvirt-libs-11.10.0-12.el9.x86_64.rpm    31 MB/s | 5.5 MB     00:00    \n(5/6): python3-lxml-4.6.5-3.el9.x86_64.rpm       16 MB/s | 1.2 MB     00:00    \n(6/6): python3-netaddr-0.10.1-3.el9.noarch.rpm   20 MB/s | 1.5 MB     00:00    \n--------------------------------------------------------------------------------\nTotal                                            15 MB/s | 8.7 MB     00:00     \nRunning transaction check\nTransaction check succeeded.\nRunning transaction test\nTransaction test succeeded.\nRunning transaction\n  Preparing        :                                                        1/1 \n  Installing       : cyrus-sasl-gssapi-2.1.27-21.el9.x86_64                 1/6 \n  Installing       : libvirt-libs-11.10.0-12.el9.x86_64                     2/6 \n  Installing       : python3-libvirt-11.10.0-2.el9.x86_64                   3/6 \n  Installing       : python3-netaddr-0.10.1-3.el9.noarch                    4/6 \n  Installing       : python3-lxml-4.6.5-3.el9.x86_64                        5/6 \n  Installing       : python3-jmespath-1.0.1-1.el9.noarch                    6/6 \n  Running scriptlet: python3-jmespath-1.0.1-1.el9.noarch                    6/6 \n  Verifying        : cyrus-sasl-gssapi-2.1.27-21.el9.x86_64                 1/6 \n  Verifying        : libvirt-libs-11.10.0-12.el9.x86_64                     2/6 \n  Verifying        : python3-jmespath-1.0.1-1.el9.noarch                    3/6 \n  Verifying        : python3-libvirt-11.10.0-2.el9.x86_64                   4/6 \n  Verifying        : python3-lxml-4.6.5-3.el9.x86_64                        5/6 \n  Verifying        : python3-netaddr-0.10.1-3.el9.noarch                    6/6 \n\nInstalled:\n  cyrus-sasl-gssapi-2.1.27-21.el9.x86_64  libvirt-libs-11.10.0-12.el9.x86_64   \n  python3-jmespath-1.0.1-1.el9.noarch     python3-libvirt-11.10.0-2.el9.x86_64 \n  python3-lxml-4.6.5-3.el9.x86_64         python3-netaddr-0.10.1-3.el9.noarch  \n\nComplete!\n+ /usr/bin/pip3 install -U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt\nDefaulting to user installation because normal site-packages is not writeable\nCollecting ansible-core==2.15.13\n  Downloading ansible_core-2.15.13-py3-none-any.whl (2.3 MB)\nCollecting oauthlib==3.2.2\n  Downloading oauthlib-3.2.2-py3-none-any.whl (151 kB)\nCollecting kubernetes==35.0.0\n  Downloading kubernetes-35.0.0-py2.py3-none-any.whl (2.0 MB)\nCollecting kubernetes-validate==1.35.0\n  Downloading kubernetes_validate-1.35.0-py3-none-any.whl (18.1 MB)\nCollecting openstacksdk==4.1.0\n  Downloading openstacksdk-4.1.0-py3-none-any.whl (1.7 MB)\nCollecting jsonschema==4.23.0\n  Downloading jsonschema-4.23.0-py3-none-any.whl (88 kB)\nCollecting pyOpenSSL==24.2.1\n  Downloading pyOpenSSL-24.2.1-py3-none-any.whl (58 kB)\nCollecting importlib-resources<5.1,>=5.0\n  Downloading importlib_resources-5.0.7-py3-none-any.whl (24 kB)\nCollecting cryptography\n  Downloading cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (4.7 MB)\nRequirement already satisfied: PyYAML>=5.1 in /usr/lib64/python3.9/site-packages (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 1)) (5.4.1)\nCollecting jinja2>=3.0.0\n  Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)\nRequirement already satisfied: packaging in /usr/lib/python3.9/site-packages (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 1)) (20.9)\nCollecting resolvelib<1.1.0,>=0.5.3\n  Downloading resolvelib-1.0.1-py2.py3-none-any.whl (17 kB)\nCollecting websocket-client!=0.40.0,!=0.41.*,!=0.42.*,>=0.32.0\n  Downloading websocket_client-1.9.0-py3-none-any.whl (82 kB)\nCollecting certifi>=14.05.14\n  Downloading certifi-2026.5.20-py3-none-any.whl (134 kB)\nCollecting durationpy>=0.7\n  Downloading durationpy-0.10-py3-none-any.whl (3.9 kB)\nRequirement already satisfied: six>=1.9.0 in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (1.15.0)\nRequirement already satisfied: python-dateutil>=2.5.3 in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (2.9.0.post0)\nRequirement already satisfied: requests in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (2.25.1)\nRequirement already satisfied: urllib3!=2.6.0,>=1.24.2 in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (1.26.5)\nCollecting requests-oauthlib\n  Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl (24 kB)\nCollecting referencing\n  Downloading referencing-0.36.2-py3-none-any.whl (26 kB)\nCollecting typing-extensions\n  Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)\nRequirement already satisfied: netifaces>=0.10.4 in /usr/lib64/python3.9/site-packages (from openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (0.10.6)\nCollecting decorator>=4.4.1\n  Downloading decorator-5.3.1-py3-none-any.whl (10 kB)\nCollecting requestsexceptions>=1.2.0\n  Downloading requestsexceptions-1.4.0-py2.py3-none-any.whl (3.8 kB)\nRequirement already satisfied: jmespath>=0.9.0 in /usr/lib/python3.9/site-packages (from openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (1.0.1)\nCollecting pbr!=2.1.0,>=2.0.0\n  Downloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)\nCollecting platformdirs>=3\n  Downloading platformdirs-4.4.0-py3-none-any.whl (18 kB)\nCollecting os-service-types>=1.7.0\n  Downloading os_service_types-1.7.0-py2.py3-none-any.whl (24 kB)\nCollecting keystoneauth1>=3.18.0\n  Downloading keystoneauth1-5.11.1-py3-none-any.whl (344 kB)\nCollecting dogpile.cache>=0.6.5\n  Downloading dogpile_cache-1.4.1-py3-none-any.whl (63 kB)\nRequirement already satisfied: jsonpatch!=1.20,>=1.16 in /usr/lib/python3.9/site-packages (from openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (1.21)\nCollecting iso8601>=0.1.11\n  Downloading iso8601-2.1.0-py3-none-any.whl (7.5 kB)\nCollecting jsonschema-specifications>=2023.03.6\n  Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl (18 kB)\nCollecting attrs>=22.2.0\n  Downloading attrs-26.1.0-py3-none-any.whl (67 kB)\nCollecting rpds-py>=0.7.1\n  Downloading rpds_py-0.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (384 kB)\nCollecting cryptography\n  Downloading cryptography-43.0.3-cp39-abi3-manylinux_2_28_x86_64.whl (4.0 MB)\nCollecting cffi>=1.12\n  Downloading cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (216 kB)\nCollecting stevedore>=3.0.0\n  Downloading stevedore-5.5.0-py3-none-any.whl (49 kB)\nCollecting MarkupSafe>=2.0\n  Downloading markupsafe-3.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (20 kB)\nRequirement already satisfied: jsonpointer>=1.9 in /usr/lib/python3.9/site-packages (from jsonpatch!=1.20,>=1.16->openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (2.0)\nRequirement already satisfied: setuptools in /usr/lib/python3.9/site-packages (from pbr!=2.1.0,>=2.0.0->openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (53.0.0)\nRequirement already satisfied: chardet<5,>=3.0.2 in /usr/lib/python3.9/site-packages (from requests->kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (4.0.0)\nRequirement already satisfied: idna<3,>=2.5 in /usr/lib/python3.9/site-packages (from requests->kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (2.10)\nRequirement already satisfied: pyparsing>=2.0.2 in /usr/lib/python3.9/site-packages (from packaging->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 1)) (2.4.7)\nCollecting pycparser\n  Downloading pycparser-2.23-py3-none-any.whl (118 kB)\nInstalling collected packages: typing-extensions, rpds-py, attrs, referencing, pycparser, pbr, stevedore, os-service-types, oauthlib, MarkupSafe, jsonschema-specifications, iso8601, decorator, cffi, websocket-client, resolvelib, requestsexceptions, requests-oauthlib, platformdirs, keystoneauth1, jsonschema, jinja2, importlib-resources, durationpy, dogpile.cache, cryptography, certifi, pyOpenSSL, openstacksdk, kubernetes-validate, kubernetes, ansible-core\nSuccessfully installed MarkupSafe-3.0.3 ansible-core-2.15.13 attrs-26.1.0 certifi-2026.5.20 cffi-2.0.0 cryptography-43.0.3 decorator-5.3.1 dogpile.cache-1.4.1 durationpy-0.10 importlib-resources-5.0.7 iso8601-2.1.0 jinja2-3.1.6 jsonschema-4.23.0 jsonschema-specifications-2025.9.1 keystoneauth1-5.11.1 kubernetes-35.0.0 kubernetes-validate-1.35.0 oauthlib-3.2.2 openstacksdk-4.1.0 os-service-types-1.7.0 pbr-7.0.3 platformdirs-4.4.0 pyOpenSSL-24.2.1 pycparser-2.23 referencing-0.36.2 requests-oauthlib-2.0.0 requestsexceptions-1.4.0 resolvelib-1.0.1 rpds-py-0.27.1 stevedore-5.5.0 typing-extensions-4.15.0 websocket-client-1.9.0\n+ /usr/bin/pip3 freeze\nansible-core==2.15.13\nattrs==26.1.0\nBabel==2.9.1\ncertifi==2026.5.20\ncffi==2.0.0\nchardet==4.0.0\ncloud-init==24.4\ncockpit @ file:///builddir/build/BUILD/cockpit-362/tmp/wheel/cockpit-362-py3-none-any.whl\nconfigobj==5.0.6\ncryptography==43.0.3\ndasbus==1.7\ndbus-python==1.2.18\ndecorator==5.3.1\ndistro==1.5.0\ndogpile.cache==1.4.1\ndurationpy==0.10\nfile-magic==0.4.0\ngpg==1.15.1\nidna==2.10\nimportlib-resources==5.0.7\niso8601==2.1.0\nJinja2==3.1.6\njmespath==1.0.1\njsonpatch==1.21\njsonpointer==2.0\njsonschema==4.23.0\njsonschema-specifications==2025.9.1\nkeystoneauth1==5.11.1\nkubernetes==35.0.0\nkubernetes-validate==1.35.0\nlibcomps==0.1.18\nlibvirt-python==11.10.0\nlxml==4.6.5\nMarkupSafe==3.0.3\nnetaddr==0.10.1\nnetifaces==0.10.6\noauthlib==3.2.2\nopenstacksdk==4.1.0\nos-service-types==1.7.0\npackaging==20.9\npbr==7.0.3\npexpect==4.8.0\nplatformdirs==4.4.0\nprettytable==0.7.2\nptyprocess==0.6.0\npycparser==2.23\npyenchant==3.2.0\nPyGObject==3.40.1\npyOpenSSL==24.2.1\npyparsing==2.4.7\npyrsistent==0.17.3\npyserial==3.4\nPySocks==1.7.1\npython-dateutil==2.9.0.post0\npytz==2021.1\nPyYAML==5.4.1\nreferencing==0.36.2\nrequests==2.25.1\nrequests-oauthlib==2.0.0\nrequestsexceptions==1.4.0\nresolvelib==1.0.1\nrpds-py==0.27.1\nrpm==4.16.1.3\nselinux==3.6\nsepolicy==3.6\nsetools==4.4.4\nsetroubleshoot @ file:///builddir/build/BUILD/setroubleshoot-3.3.35/src\nsix==1.15.0\nsos==4.11.0\nstevedore==5.5.0\nsystemd-python==234\ntyping_extensions==4.15.0\nurllib3==1.26.5\nwebsocket-client==1.9.0\n+ /home/zuul/test-python/bin/pip3 freeze\nbindep==2.14.0\ndistro==1.9.0\npackaging==26.2\nParsley==1.3\npbr==7.0.3\nbash scripts/setup_molecule 2>&1 | tee /tmp/setup_molecule.log\nallexport      \toff\nbraceexpand    \ton\nemacs          \toff\nerrexit        \ton\nerrtrace       \toff\nfunctrace      \toff\nhashall        \ton\nhistexpand     \toff\nhistory        \toff\nignoreeof      \toff\ninteractive-comments\ton\nkeyword        \toff\nmonitor        \toff\nnoclobber      \toff\nnoexec         \toff\nnoglob         \toff\nnolog          \toff\nnotify         \toff\nnounset        \ton\nonecmd         \toff\nphysical       \toff\npipefail       \ton\nposix          \toff\nprivileged     \toff\nverbose        \toff\nvi             \toff\nxtrace         \ton\n++++ readlink -f scripts/setup_molecule\n+++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/setup_molecule\n++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts\n+ export PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework\n+ PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework\n+ export ANSIBLE_SKIP_CONFLICT_CHECK=1\n+ ANSIBLE_SKIP_CONFLICT_CHECK=1\n+ PIP_INSTALL_ARGUMENTS='-U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt'\n+ case ${USE_VENV-'yes'} in\n+ GALAXY=/home/zuul/test-python/bin/ansible-galaxy\n+ PIP=/home/zuul/test-python/bin/pip3\n+ /home/zuul/test-python/bin/pip3 install -U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt\nCollecting ansible-core==2.15.13 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading ansible_core-2.15.13-py3-none-any.whl.metadata (7.0 kB)\nCollecting molecule==5.1.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading molecule-5.1.0-py3-none-any.whl.metadata (7.8 kB)\nCollecting molecule-plugins==23.5.0 (from molecule-plugins[podman]==23.5.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 5))\n  Downloading molecule_plugins-23.5.0-py3-none-any.whl.metadata (2.9 kB)\nCollecting ruamel.yaml==0.18.6 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 6))\n  Downloading ruamel.yaml-0.18.6-py3-none-any.whl.metadata (23 kB)\nCollecting ansi2html==1.9.2 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 7))\n  Downloading ansi2html-1.9.2-py3-none-any.whl.metadata (3.7 kB)\nCollecting dogpile.cache==1.3.3 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))\n  Downloading dogpile.cache-1.3.3-py3-none-any.whl.metadata (5.2 kB)\nCollecting jmespath==1.0.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 9))\n  Downloading jmespath-1.0.1-py3-none-any.whl.metadata (7.6 kB)\nCollecting netaddr==1.3.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 10))\n  Downloading netaddr-1.3.0-py3-none-any.whl.metadata (5.0 kB)\nCollecting dnspython==2.7.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 11))\n  Downloading dnspython-2.7.0-py3-none-any.whl.metadata (5.8 kB)\nCollecting pytest==8.3.3 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))\n  Downloading pytest-8.3.3-py3-none-any.whl.metadata (7.5 kB)\nCollecting pytest-cov==6.0.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 15))\n  Downloading pytest_cov-6.0.0-py3-none-any.whl.metadata (27 kB)\nCollecting pytest-html==4.1.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 16))\n  Downloading pytest_html-4.1.1-py3-none-any.whl.metadata (3.9 kB)\nCollecting pytest-testinfra==10.1.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 17))\n  Downloading pytest_testinfra-10.1.1-py3-none-any.whl.metadata (3.7 kB)\nCollecting pytest-xdist==3.6.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 18))\n  Downloading pytest_xdist-3.6.1-py3-none-any.whl.metadata (4.3 kB)\nCollecting mock==5.1.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 19))\n  Downloading mock-5.1.0-py3-none-any.whl.metadata (3.0 kB)\nCollecting pre-commit==4.0.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading pre_commit-4.0.1-py2.py3-none-any.whl.metadata (1.3 kB)\nCollecting yamllint==1.35.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 23))\n  Downloading yamllint-1.35.1-py3-none-any.whl.metadata (4.2 kB)\nCollecting pyspelling==2.10 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading pyspelling-2.10-py3-none-any.whl.metadata (3.8 kB)\nCollecting mkdocs-pymdownx-material-extras==2.6 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading mkdocs_pymdownx_material_extras-2.6-py3-none-any.whl.metadata (5.3 kB)\nCollecting ansi2txt==0.2.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 28))\n  Downloading ansi2txt-0.2.0-py3-none-any.whl.metadata (2.1 kB)\nCollecting jinja2>=3.0.0 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)\nCollecting PyYAML>=5.1 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading pyyaml-6.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)\nCollecting cryptography (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl.metadata (4.3 kB)\nRequirement already satisfied: packaging in /home/zuul/test-python/lib/python3.9/site-packages (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1)) (26.2)\nCollecting resolvelib<1.1.0,>=0.5.3 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading resolvelib-1.0.1-py2.py3-none-any.whl.metadata (4.0 kB)\nCollecting importlib-resources<5.1,>=5.0 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading importlib_resources-5.0.7-py3-none-any.whl.metadata (2.8 kB)\nCollecting ansible-compat>=4.1.2 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading ansible_compat-24.10.0-py3-none-any.whl.metadata (4.0 kB)\nCollecting click<9,>=8.0 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading click-8.1.8-py3-none-any.whl.metadata (2.3 kB)\nCollecting click-help-colors>=0.9 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading click_help_colors-0.9.4-py3-none-any.whl.metadata (4.1 kB)\nCollecting cookiecutter>=1.7.3 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading cookiecutter-2.6.0-py3-none-any.whl.metadata (7.3 kB)\nCollecting enrich>=1.2.7 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading enrich-1.2.7-py3-none-any.whl.metadata (3.9 kB)\nCollecting jsonschema>=4.9.1 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading jsonschema-4.25.1-py3-none-any.whl.metadata (7.6 kB)\nCollecting pluggy<2.0,>=0.7.1 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading pluggy-1.6.0-py3-none-any.whl.metadata (4.8 kB)\nCollecting rich>=9.5.1 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading rich-15.0.0-py3-none-any.whl.metadata (18 kB)\nCollecting ruamel.yaml.clib>=0.2.7 (from ruamel.yaml==0.18.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 6))\n  Downloading ruamel_yaml_clib-0.2.15-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (3.5 kB)\nCollecting decorator>=4.0.0 (from dogpile.cache==1.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))\n  Downloading decorator-5.3.1-py3-none-any.whl.metadata (3.9 kB)\nCollecting stevedore>=3.0.0 (from dogpile.cache==1.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))\n  Downloading stevedore-5.5.0-py3-none-any.whl.metadata (2.2 kB)\nCollecting typing-extensions>=4.0.1 (from dogpile.cache==1.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))\n  Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)\nCollecting iniconfig (from pytest==8.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))\n  Downloading iniconfig-2.1.0-py3-none-any.whl.metadata (2.7 kB)\nCollecting exceptiongroup>=1.0.0rc8 (from pytest==8.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))\n  Downloading exceptiongroup-1.3.1-py3-none-any.whl.metadata (6.7 kB)\nCollecting tomli>=1 (from pytest==8.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))\n  Downloading tomli-2.4.1-py3-none-any.whl.metadata (10 kB)\nCollecting coverage>=7.5 (from coverage[toml]>=7.5->pytest-cov==6.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 15))\n  Downloading coverage-7.10.7-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (8.9 kB)\nCollecting pytest-metadata>=2.0.0 (from pytest-html==4.1.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 16))\n  Downloading pytest_metadata-3.1.1-py3-none-any.whl.metadata (8.6 kB)\nCollecting execnet>=2.1 (from pytest-xdist==3.6.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 18))\n  Downloading execnet-2.1.2-py3-none-any.whl.metadata (2.9 kB)\nCollecting cfgv>=2.0.0 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading cfgv-3.4.0-py2.py3-none-any.whl.metadata (8.5 kB)\nCollecting identify>=1.0.0 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading identify-2.6.15-py2.py3-none-any.whl.metadata (4.4 kB)\nCollecting nodeenv>=0.11.1 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading nodeenv-1.10.0-py2.py3-none-any.whl.metadata (24 kB)\nCollecting virtualenv>=20.10.0 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading virtualenv-21.4.2-py3-none-any.whl.metadata (3.5 kB)\nCollecting pathspec>=0.5.3 (from yamllint==1.35.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 23))\n  Downloading pathspec-1.1.1-py3-none-any.whl.metadata (14 kB)\nCollecting beautifulsoup4 (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading beautifulsoup4-4.15.0-py3-none-any.whl.metadata (3.8 kB)\nCollecting html5lib (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading html5lib-1.1-py2.py3-none-any.whl.metadata (16 kB)\nCollecting lxml (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading lxml-6.1.1-cp39-cp39-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (3.5 kB)\nCollecting markdown (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading markdown-3.9-py3-none-any.whl.metadata (5.1 kB)\nCollecting soupsieve>=1.8 (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading soupsieve-2.8.4-py3-none-any.whl.metadata (4.6 kB)\nCollecting wcmatch>=8.5 (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading wcmatch-10.1-py3-none-any.whl.metadata (5.1 kB)\nCollecting mkdocs-material>=8.3.3 (from mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading mkdocs_material-9.7.6-py3-none-any.whl.metadata (19 kB)\nCollecting subprocess-tee>=0.4.1 (from ansible-compat>=4.1.2->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading subprocess_tee-0.4.2-py3-none-any.whl.metadata (3.3 kB)\nCollecting binaryornot>=0.4.4 (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading binaryornot-0.4.4-py2.py3-none-any.whl.metadata (6.0 kB)\nCollecting python-slugify>=4.0.0 (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading python_slugify-8.0.4-py2.py3-none-any.whl.metadata (8.5 kB)\nCollecting requests>=2.23.0 (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading requests-2.32.5-py3-none-any.whl.metadata (4.9 kB)\nCollecting arrow (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading arrow-1.4.0-py3-none-any.whl.metadata (7.7 kB)\nCollecting MarkupSafe>=2.0 (from jinja2>=3.0.0->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading markupsafe-3.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)\nCollecting chardet>=3.0.2 (from binaryornot>=0.4.4->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading chardet-5.2.0-py3-none-any.whl.metadata (3.4 kB)\nCollecting attrs>=22.2.0 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading attrs-26.1.0-py3-none-any.whl.metadata (8.8 kB)\nCollecting jsonschema-specifications>=2023.03.6 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl.metadata (2.9 kB)\nCollecting referencing>=0.28.4 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading referencing-0.36.2-py3-none-any.whl.metadata (2.8 kB)\nCollecting rpds-py>=0.7.1 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading rpds_py-0.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.2 kB)\nCollecting babel>=2.10 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading babel-2.18.0-py3-none-any.whl.metadata (2.2 kB)\nCollecting backrefs>=5.7.post1 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading backrefs-6.2-py39-none-any.whl.metadata (3.0 kB)\nCollecting colorama>=0.4 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)\nCollecting mkdocs-material-extensions>=1.3 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading mkdocs_material_extensions-1.3.1-py3-none-any.whl.metadata (6.9 kB)\nCollecting mkdocs<2,>=1.6 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading mkdocs-1.6.1-py3-none-any.whl.metadata (6.0 kB)\nCollecting paginate>=0.5 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading paginate-0.5.7-py2.py3-none-any.whl.metadata (11 kB)\nCollecting pygments>=2.16 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading pygments-2.20.0-py3-none-any.whl.metadata (2.5 kB)\nCollecting pymdown-extensions>=10.2 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading pymdown_extensions-10.21.3-py3-none-any.whl.metadata (3.1 kB)\nCollecting ghp-import>=1.0 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading ghp_import-2.1.0-py3-none-any.whl.metadata (7.2 kB)\nCollecting importlib-metadata>=4.4 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading importlib_metadata-8.7.1-py3-none-any.whl.metadata (4.7 kB)\nCollecting mergedeep>=1.3.4 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading mergedeep-1.3.4-py3-none-any.whl.metadata (4.3 kB)\nCollecting mkdocs-get-deps>=0.2.0 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading mkdocs_get_deps-0.2.2-py3-none-any.whl.metadata (4.0 kB)\nCollecting pyyaml-env-tag>=0.1 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading pyyaml_env_tag-1.1-py3-none-any.whl.metadata (5.5 kB)\nCollecting watchdog>=2.0 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl.metadata (44 kB)\nCollecting python-dateutil>=2.8.1 (from ghp-import>=1.0->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)\nCollecting zipp>=3.20 (from importlib-metadata>=4.4->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading zipp-3.23.1-py3-none-any.whl.metadata (3.6 kB)\nCollecting platformdirs>=2.2.0 (from mkdocs-get-deps>=0.2.0->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading platformdirs-4.4.0-py3-none-any.whl.metadata (12 kB)\nCollecting six>=1.5 (from python-dateutil>=2.8.1->ghp-import>=1.0->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))\n  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)\nCollecting text-unidecode>=1.3 (from python-slugify>=4.0.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading text_unidecode-1.3-py2.py3-none-any.whl.metadata (2.4 kB)\nCollecting charset_normalizer<4,>=2 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading charset_normalizer-3.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)\nCollecting idna<4,>=2.5 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading idna-3.18-py3-none-any.whl.metadata (6.1 kB)\nCollecting urllib3<3,>=1.21.1 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading urllib3-2.6.3-py3-none-any.whl.metadata (6.9 kB)\nCollecting certifi>=2017.4.17 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading certifi-2026.5.20-py3-none-any.whl.metadata (2.5 kB)\nCollecting markdown-it-py>=2.2.0 (from rich>=9.5.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB)\nCollecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=9.5.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)\nCollecting distlib<1,>=0.3.7 (from virtualenv>=20.10.0->pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading distlib-0.4.2-py2.py3-none-any.whl.metadata (5.3 kB)\nCollecting filelock<=3.19.1,>=3.16.1 (from virtualenv>=20.10.0->pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading filelock-3.19.1-py3-none-any.whl.metadata (2.1 kB)\nCollecting python-discovery>=1.4 (from virtualenv>=20.10.0->pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))\n  Downloading python_discovery-1.4.0-py3-none-any.whl.metadata (5.6 kB)\nCollecting bracex>=2.1.1 (from wcmatch>=8.5->pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading bracex-2.6-py3-none-any.whl.metadata (3.6 kB)\nCollecting tzdata (from arrow->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))\n  Downloading tzdata-2026.2-py2.py3-none-any.whl.metadata (1.4 kB)\nCollecting cffi>=2.0.0 (from cryptography->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.6 kB)\nCollecting pycparser (from cffi>=2.0.0->cryptography->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))\n  Downloading pycparser-2.23-py3-none-any.whl.metadata (993 bytes)\nCollecting webencodings (from html5lib->pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))\n  Downloading webencodings-0.5.1-py2.py3-none-any.whl.metadata (2.1 kB)\nDownloading ansible_core-2.15.13-py3-none-any.whl (2.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 23.5 MB/s  0:00:00\nDownloading molecule-5.1.0-py3-none-any.whl (240 kB)\nDownloading molecule_plugins-23.5.0-py3-none-any.whl (68 kB)\nDownloading ruamel.yaml-0.18.6-py3-none-any.whl (117 kB)\nDownloading ansi2html-1.9.2-py3-none-any.whl (17 kB)\nDownloading dogpile.cache-1.3.3-py3-none-any.whl (58 kB)\nDownloading jmespath-1.0.1-py3-none-any.whl (20 kB)\nDownloading netaddr-1.3.0-py3-none-any.whl (2.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 16.8 MB/s  0:00:00\nDownloading dnspython-2.7.0-py3-none-any.whl (313 kB)\nDownloading pytest-8.3.3-py3-none-any.whl (342 kB)\nDownloading pytest_cov-6.0.0-py3-none-any.whl (22 kB)\nDownloading pytest_html-4.1.1-py3-none-any.whl (23 kB)\nDownloading pytest_testinfra-10.1.1-py3-none-any.whl (76 kB)\nDownloading pytest_xdist-3.6.1-py3-none-any.whl (46 kB)\nDownloading mock-5.1.0-py3-none-any.whl (30 kB)\nDownloading pre_commit-4.0.1-py2.py3-none-any.whl (218 kB)\nDownloading yamllint-1.35.1-py3-none-any.whl (66 kB)\nDownloading pyspelling-2.10-py3-none-any.whl (45 kB)\nDownloading mkdocs_pymdownx_material_extras-2.6-py3-none-any.whl (27 kB)\nDownloading ansi2txt-0.2.0-py3-none-any.whl (14 kB)\nDownloading click-8.1.8-py3-none-any.whl (98 kB)\nDownloading importlib_resources-5.0.7-py3-none-any.whl (24 kB)\nDownloading pluggy-1.6.0-py3-none-any.whl (20 kB)\nDownloading resolvelib-1.0.1-py2.py3-none-any.whl (17 kB)\nDownloading ansible_compat-24.10.0-py3-none-any.whl (24 kB)\nDownloading cfgv-3.4.0-py2.py3-none-any.whl (7.2 kB)\nDownloading click_help_colors-0.9.4-py3-none-any.whl (6.4 kB)\nDownloading cookiecutter-2.6.0-py3-none-any.whl (39 kB)\nDownloading jinja2-3.1.6-py3-none-any.whl (134 kB)\nDownloading binaryornot-0.4.4-py2.py3-none-any.whl (9.0 kB)\nDownloading chardet-5.2.0-py3-none-any.whl (199 kB)\nDownloading coverage-7.10.7-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (246 kB)\nDownloading decorator-5.3.1-py3-none-any.whl (10 kB)\nDownloading enrich-1.2.7-py3-none-any.whl (8.7 kB)\nDownloading exceptiongroup-1.3.1-py3-none-any.whl (16 kB)\nDownloading execnet-2.1.2-py3-none-any.whl (40 kB)\nDownloading identify-2.6.15-py2.py3-none-any.whl (99 kB)\nDownloading jsonschema-4.25.1-py3-none-any.whl (90 kB)\nDownloading attrs-26.1.0-py3-none-any.whl (67 kB)\nDownloading jsonschema_specifications-2025.9.1-py3-none-any.whl (18 kB)\nDownloading markupsafe-3.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (20 kB)\nDownloading mkdocs_material-9.7.6-py3-none-any.whl (9.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 9.3/9.3 MB 12.7 MB/s  0:00:00\nDownloading mkdocs-1.6.1-py3-none-any.whl (3.9 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 3.9/3.9 MB 10.0 MB/s  0:00:00\nDownloading babel-2.18.0-py3-none-any.whl (10.2 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 10.2/10.2 MB 36.6 MB/s  0:00:00\nDownloading backrefs-6.2-py39-none-any.whl (381 kB)\nDownloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\nDownloading ghp_import-2.1.0-py3-none-any.whl (11 kB)\nDownloading importlib_metadata-8.7.1-py3-none-any.whl (27 kB)\nDownloading markdown-3.9-py3-none-any.whl (107 kB)\nDownloading mergedeep-1.3.4-py3-none-any.whl (6.4 kB)\nDownloading mkdocs_get_deps-0.2.2-py3-none-any.whl (9.6 kB)\nDownloading mkdocs_material_extensions-1.3.1-py3-none-any.whl (8.7 kB)\nDownloading nodeenv-1.10.0-py2.py3-none-any.whl (23 kB)\nDownloading paginate-0.5.7-py2.py3-none-any.whl (13 kB)\nDownloading pathspec-1.1.1-py3-none-any.whl (57 kB)\nDownloading platformdirs-4.4.0-py3-none-any.whl (18 kB)\nDownloading pygments-2.20.0-py3-none-any.whl (1.2 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1.2/1.2 MB 33.5 MB/s  0:00:00\nDownloading pymdown_extensions-10.21.3-py3-none-any.whl (269 kB)\nDownloading pytest_metadata-3.1.1-py3-none-any.whl (11 kB)\nDownloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)\nDownloading python_slugify-8.0.4-py2.py3-none-any.whl (10 kB)\nDownloading pyyaml-6.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (750 kB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 750.8/750.8 kB 37.4 MB/s  0:00:00\nDownloading pyyaml_env_tag-1.1-py3-none-any.whl (4.7 kB)\nDownloading referencing-0.36.2-py3-none-any.whl (26 kB)\nDownloading requests-2.32.5-py3-none-any.whl (64 kB)\nDownloading charset_normalizer-3.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (208 kB)\nDownloading idna-3.18-py3-none-any.whl (65 kB)\nDownloading urllib3-2.6.3-py3-none-any.whl (131 kB)\nDownloading certifi-2026.5.20-py3-none-any.whl (134 kB)\nDownloading rich-15.0.0-py3-none-any.whl (310 kB)\nDownloading markdown_it_py-3.0.0-py3-none-any.whl (87 kB)\nDownloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)\nDownloading rpds_py-0.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (384 kB)\nDownloading ruamel_yaml_clib-0.2.15-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (734 kB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 734.1/734.1 kB 35.9 MB/s  0:00:00\nDownloading six-1.17.0-py2.py3-none-any.whl (11 kB)\nDownloading soupsieve-2.8.4-py3-none-any.whl (37 kB)\nDownloading stevedore-5.5.0-py3-none-any.whl (49 kB)\nDownloading subprocess_tee-0.4.2-py3-none-any.whl (5.2 kB)\nDownloading text_unidecode-1.3-py2.py3-none-any.whl (78 kB)\nDownloading tomli-2.4.1-py3-none-any.whl (14 kB)\nDownloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)\nDownloading virtualenv-21.4.2-py3-none-any.whl (7.6 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 7.6/7.6 MB 82.7 MB/s  0:00:00\nDownloading distlib-0.4.2-py2.py3-none-any.whl (470 kB)\nDownloading filelock-3.19.1-py3-none-any.whl (15 kB)\nDownloading python_discovery-1.4.0-py3-none-any.whl (33 kB)\nDownloading watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl (79 kB)\nDownloading wcmatch-10.1-py3-none-any.whl (39 kB)\nDownloading bracex-2.6-py3-none-any.whl (11 kB)\nDownloading zipp-3.23.1-py3-none-any.whl (10 kB)\nDownloading arrow-1.4.0-py3-none-any.whl (68 kB)\nDownloading beautifulsoup4-4.15.0-py3-none-any.whl (109 kB)\nDownloading cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (4.7 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 4.7/4.7 MB 71.9 MB/s  0:00:00\nDownloading cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (216 kB)\nDownloading html5lib-1.1-py2.py3-none-any.whl (112 kB)\nDownloading iniconfig-2.1.0-py3-none-any.whl (6.0 kB)\nDownloading lxml-6.1.1-cp39-cp39-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (5.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 5.3/5.3 MB 8.4 MB/s  0:00:00\nDownloading pycparser-2.23-py3-none-any.whl (118 kB)\nDownloading tzdata-2026.2-py2.py3-none-any.whl (349 kB)\nDownloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB)\nInstalling collected packages: webencodings, text-unidecode, resolvelib, paginate, distlib, zipp, watchdog, urllib3, tzdata, typing-extensions, tomli, subprocess-tee, stevedore, soupsieve, six, ruamel.yaml.clib, rpds-py, PyYAML, python-slugify, pygments, pycparser, pluggy, platformdirs, pathspec, nodeenv, netaddr, mock, mkdocs-material-extensions, mergedeep, mdurl, MarkupSafe, lxml, jmespath, iniconfig, importlib-resources, idna, identify, filelock, execnet, dnspython, decorator, coverage, colorama, click, charset_normalizer, chardet, cfgv, certifi, bracex, backrefs, babel, attrs, ansi2txt, ansi2html, yamllint, wcmatch, ruamel.yaml, requests, referencing, pyyaml-env-tag, python-discovery, python-dateutil, markdown-it-py, jinja2, importlib-metadata, html5lib, exceptiongroup, dogpile.cache, click-help-colors, cffi, binaryornot, beautifulsoup4, virtualenv, rich, pytest, mkdocs-get-deps, markdown, jsonschema-specifications, ghp-import, cryptography, arrow, pytest-xdist, pytest-testinfra, pytest-metadata, pytest-cov, pyspelling, pymdown-extensions, pre-commit, mkdocs, jsonschema, enrich, cookiecutter, ansible-core, pytest-html, mkdocs-material, ansible-compat, molecule, mkdocs-pymdownx-material-extras, molecule-plugins\n\nSuccessfully installed MarkupSafe-3.0.3 PyYAML-6.0.3 ansi2html-1.9.2 ansi2txt-0.2.0 ansible-compat-24.10.0 ansible-core-2.15.13 arrow-1.4.0 attrs-26.1.0 babel-2.18.0 backrefs-6.2 beautifulsoup4-4.15.0 binaryornot-0.4.4 bracex-2.6 certifi-2026.5.20 cffi-2.0.0 cfgv-3.4.0 chardet-5.2.0 charset_normalizer-3.4.7 click-8.1.8 click-help-colors-0.9.4 colorama-0.4.6 cookiecutter-2.6.0 coverage-7.10.7 cryptography-48.0.0 decorator-5.3.1 distlib-0.4.2 dnspython-2.7.0 dogpile.cache-1.3.3 enrich-1.2.7 exceptiongroup-1.3.1 execnet-2.1.2 filelock-3.19.1 ghp-import-2.1.0 html5lib-1.1 identify-2.6.15 idna-3.18 importlib-metadata-8.7.1 importlib-resources-5.0.7 iniconfig-2.1.0 jinja2-3.1.6 jmespath-1.0.1 jsonschema-4.25.1 jsonschema-specifications-2025.9.1 lxml-6.1.1 markdown-3.9 markdown-it-py-3.0.0 mdurl-0.1.2 mergedeep-1.3.4 mkdocs-1.6.1 mkdocs-get-deps-0.2.2 mkdocs-material-9.7.6 mkdocs-material-extensions-1.3.1 mkdocs-pymdownx-material-extras-2.6 mock-5.1.0 molecule-5.1.0 molecule-plugins-23.5.0 netaddr-1.3.0 nodeenv-1.10.0 paginate-0.5.7 pathspec-1.1.1 platformdirs-4.4.0 pluggy-1.6.0 pre-commit-4.0.1 pycparser-2.23 pygments-2.20.0 pymdown-extensions-10.21.3 pyspelling-2.10 pytest-8.3.3 pytest-cov-6.0.0 pytest-html-4.1.1 pytest-metadata-3.1.1 pytest-testinfra-10.1.1 pytest-xdist-3.6.1 python-dateutil-2.9.0.post0 python-discovery-1.4.0 python-slugify-8.0.4 pyyaml-env-tag-1.1 referencing-0.36.2 requests-2.32.5 resolvelib-1.0.1 rich-15.0.0 rpds-py-0.27.1 ruamel.yaml-0.18.6 ruamel.yaml.clib-0.2.15 six-1.17.0 soupsieve-2.8.4 stevedore-5.5.0 subprocess-tee-0.4.2 text-unidecode-1.3 tomli-2.4.1 typing-extensions-4.15.0 tzdata-2026.2 urllib3-2.6.3 virtualenv-21.4.2 watchdog-6.0.0 wcmatch-10.1 webencodings-0.5.1 yamllint-1.35.1 zipp-3.23.1\n++ git -C /home/zuul/src/github.com/openstack-k8s-operators/ci-framework rev-parse --short HEAD\n+ GITVER=8da4ba01\n+ [[ '' == \\8\\d\\a\\4\\b\\a\\0\\1 ]]\n+ sed -ri 's/^(version: [0-9.]+).*/\\1+8da4ba01/' /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/galaxy.yml\n+ /home/zuul/test-python/bin/ansible-galaxy collection install --upgrade --force --timeout=120 /home/zuul/src/github.com/openstack-k8s-operators/ci-framework\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible-podman-collectionsqb0eklf7'...\nNote: switching to '1.16.2'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 4c84135 Release 1.16.2 version (#873)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.general86afvqlj'...\nNote: switching to '10.0.1'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at eb4c01260 Release 10.0.1.\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible.posixllb1ap2c'...\nNote: switching to '1.6.2'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 31376a3 Merge pull request #583 from saito-hideki/stable-1_v1.6.2\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible.utilsapv5kgyr'...\nNote: switching to 'v5.1.2'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at e213ad9 Release 5.1.2 (#378)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.libvirti4z_6940'...\nNote: switching to '1.3.0'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 7109cb7 Release 1.3.0 commit\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.cryptolpmfgzrf'...\nNote: switching to '2.22.3'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 7adca3ef Release 2.22.3.\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/kubernetes.coreefbk61ea'...\nNote: switching to '5.0.0'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 7b0190f Prepare release 5.0.0 (#733)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible.netcommon351eylmh'...\nNote: switching to 'v7.1.0'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at d2c5fd0 Prep release 7.1.0 (#666)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible-config_template7w4n257c'...\nNote: switching to '2.1.1'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 931f6aa Bump version for bugfix release\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/junipernetworks.junos2iygc0iv'...\nNote: switching to 'v9.1.0'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 27bf936 Prepare minor release 9.1.0 (#529)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/cisco.iosblxk4bmb'...\nNote: switching to 'v9.0.3'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at a71f345d Release PR 9.0.3 (#1125)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/mellanox.onyx67cghfyz'...\nAlready on 'master'\nYour branch is up to date with 'origin/master'.\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.okdxbtlpxr4'...\nNote: switching to '4.0.0'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at 97ed9be Release 4.0.0 (#235)\nCloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ovirt-ansible-collection538mj1sd'...\nNote: switching to '3.2.0-1'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by switching back to a branch.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -c with the switch command. Example:\n\n  git switch -c <new-branch-name>\n\nOr undo this operation with:\n\n  git switch -\n\nTurn off this advice by setting config variable advice.detachedHead to false\n\nHEAD is now at ab2e793 ovirt_role: Fix administrative option when set to False\nStarting galaxy collection install process\nProcess install dependency map\nStarting collection install process\nInstalling 'cifmw.general:1.0.0+8da4ba01' to '/home/zuul/.ansible/collections/ansible_collections/cifmw/general'\nCreated collection for cifmw.general:1.0.0+8da4ba01 at /home/zuul/.ansible/collections/ansible_collections/cifmw/general\ncifmw.general:1.0.0+8da4ba01 was installed successfully\nInstalling 'containers.podman:1.16.2' to '/home/zuul/.ansible/collections/ansible_collections/containers/podman'\nCreated collection for containers.podman:1.16.2 at /home/zuul/.ansible/collections/ansible_collections/containers/podman\ncontainers.podman:1.16.2 was installed successfully\nInstalling 'community.general:10.0.1' to '/home/zuul/.ansible/collections/ansible_collections/community/general'\nCreated collection for community.general:10.0.1 at /home/zuul/.ansible/collections/ansible_collections/community/general\ncommunity.general:10.0.1 was installed successfully\nInstalling 'ansible.posix:1.6.2' to '/home/zuul/.ansible/collections/ansible_collections/ansible/posix'\nCreated collection for ansible.posix:1.6.2 at /home/zuul/.ansible/collections/ansible_collections/ansible/posix\nansible.posix:1.6.2 was installed successfully\nInstalling 'ansible.utils:5.1.2' to '/home/zuul/.ansible/collections/ansible_collections/ansible/utils'\nCreated collection for ansible.utils:5.1.2 at /home/zuul/.ansible/collections/ansible_collections/ansible/utils\nansible.utils:5.1.2 was installed successfully\nInstalling 'community.libvirt:1.3.0' to '/home/zuul/.ansible/collections/ansible_collections/community/libvirt'\nCreated collection for community.libvirt:1.3.0 at /home/zuul/.ansible/collections/ansible_collections/community/libvirt\ncommunity.libvirt:1.3.0 was installed successfully\nInstalling 'community.crypto:2.22.3' to '/home/zuul/.ansible/collections/ansible_collections/community/crypto'\nCreated collection for community.crypto:2.22.3 at /home/zuul/.ansible/collections/ansible_collections/community/crypto\ncommunity.crypto:2.22.3 was installed successfully\nInstalling 'kubernetes.core:5.0.0' to '/home/zuul/.ansible/collections/ansible_collections/kubernetes/core'\nCreated collection for kubernetes.core:5.0.0 at /home/zuul/.ansible/collections/ansible_collections/kubernetes/core\nkubernetes.core:5.0.0 was installed successfully\nInstalling 'ansible.netcommon:7.1.0' to '/home/zuul/.ansible/collections/ansible_collections/ansible/netcommon'\nCreated collection for ansible.netcommon:7.1.0 at /home/zuul/.ansible/collections/ansible_collections/ansible/netcommon\nansible.netcommon:7.1.0 was installed successfully\nInstalling 'openstack.config_template:2.1.1' to '/home/zuul/.ansible/collections/ansible_collections/openstack/config_template'\nCreated collection for openstack.config_template:2.1.1 at /home/zuul/.ansible/collections/ansible_collections/openstack/config_template\nopenstack.config_template:2.1.1 was installed successfully\nInstalling 'junipernetworks.junos:9.1.0' to '/home/zuul/.ansible/collections/ansible_collections/junipernetworks/junos'\nCreated collection for junipernetworks.junos:9.1.0 at /home/zuul/.ansible/collections/ansible_collections/junipernetworks/junos\njunipernetworks.junos:9.1.0 was installed successfully\nInstalling 'cisco.ios:9.0.3' to '/home/zuul/.ansible/collections/ansible_collections/cisco/ios'\nCreated collection for cisco.ios:9.0.3 at /home/zuul/.ansible/collections/ansible_collections/cisco/ios\ncisco.ios:9.0.3 was installed successfully\nInstalling 'mellanox.onyx:1.0.0' to '/home/zuul/.ansible/collections/ansible_collections/mellanox/onyx'\nCreated collection for mellanox.onyx:1.0.0 at /home/zuul/.ansible/collections/ansible_collections/mellanox/onyx\nmellanox.onyx:1.0.0 was installed successfully\nInstalling 'community.okd:4.0.0' to '/home/zuul/.ansible/collections/ansible_collections/community/okd'\nCreated collection for community.okd:4.0.0 at /home/zuul/.ansible/collections/ansible_collections/community/okd\ncommunity.okd:4.0.0 was installed successfully\nInstalling '@NAMESPACE@.@NAME@:3.1.4' to '/home/zuul/.ansible/collections/ansible_collections/@NAMESPACE@/@NAME@'\nCreated collection for @NAMESPACE@.@NAME@:3.1.4 at /home/zuul/.ansible/collections/ansible_collections/@NAMESPACE@/@NAME@\n@NAMESPACE@.@NAME@:3.1.4 was installed successfully\n+ [[ '' == \\8\\d\\a\\4\\b\\a\\0\\1 ]]\n+ sed -ri 's/^(version: [0-9.]+)+8da4ba01/\\1/' /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/galaxy.yml",
                            "stdout_lines": [
                                "bash scripts/setup_env 2>&1 | tee /tmp/setup_env.log",
                                "allexport      \toff",
                                "braceexpand    \ton",
                                "emacs          \toff",
                                "errexit        \ton",
                                "errtrace       \toff",
                                "functrace      \toff",
                                "hashall        \ton",
                                "histexpand     \toff",
                                "history        \toff",
                                "ignoreeof      \toff",
                                "interactive-comments\ton",
                                "keyword        \toff",
                                "monitor        \toff",
                                "noclobber      \toff",
                                "noexec         \toff",
                                "noglob         \toff",
                                "nolog          \toff",
                                "notify         \toff",
                                "nounset        \ton",
                                "onecmd         \toff",
                                "physical       \toff",
                                "pipefail       \ton",
                                "posix          \toff",
                                "privileged     \toff",
                                "verbose        \toff",
                                "vi             \toff",
                                "xtrace         \ton",
                                "++++ readlink -f scripts/setup_env",
                                "+++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/setup_env",
                                "++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts",
                                "+ export PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                "+ PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                "+ export ANSIBLE_SKIP_CONFLICT_CHECK=1",
                                "+ ANSIBLE_SKIP_CONFLICT_CHECK=1",
                                "+ USE_VENV=yes",
                                "+ source /etc/os-release",
                                "++ NAME='CentOS Stream'",
                                "++ VERSION=9",
                                "++ ID=centos",
                                "++ ID_LIKE='rhel fedora'",
                                "++ VERSION_ID=9",
                                "++ PLATFORM_ID=platform:el9",
                                "++ PRETTY_NAME='CentOS Stream 9'",
                                "++ ANSI_COLOR='0;31'",
                                "++ LOGO=fedora-logo-icon",
                                "++ CPE_NAME=cpe:/o:centos:centos:9",
                                "++ HOME_URL=https://centos.org/",
                                "++ BUG_REPORT_URL=https://issues.redhat.com/",
                                "++ REDHAT_SUPPORT_PRODUCT='Red Hat Enterprise Linux 9'",
                                "++ REDHAT_SUPPORT_PRODUCT_VERSION='CentOS Stream'",
                                "++ command -v dnf",
                                "+ RHT_PKG_MGR=/usr/bin/dnf",
                                "++ command -v python3",
                                "+ PYTHON_EXEC=/usr/bin/python3",
                                "++ dirname /usr/bin/python3",
                                "+ SYSTEM_PIP=/usr/bin/pip3",
                                "+ command -v gcc",
                                "/usr/bin/gcc",
                                "+ PIP_INSTALL_ARGUMENTS='-U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt'",
                                "+ case ${USE_VENV} in",
                                "+ PIP=/home/zuul/test-python/bin/pip3",
                                "+ USE_VENV=yes",
                                "+ echo",
                                "",
                                "+ echo",
                                "",
                                "+ echo",
                                "",
                                "+ sudo -k",
                                "+ mkdir -p /home/zuul/ci/yum.repos.d",
                                "+ cp /etc/ci/mirror_info.sh /home/zuul/ci",
                                "+ cp -r '/opt/yum.repos.d/*' /home/zuul/ci/yum.repos.d",
                                "cp: cannot stat '/opt/yum.repos.d/*': No such file or directory",
                                "+ cp -r /etc/yum.repos.d/centos-addons.repo /etc/yum.repos.d/centos.repo /home/zuul/ci/yum.repos.d",
                                "+ case ${USE_VENV} in",
                                "+ :",
                                "+ /usr/bin/python3 -m venv --upgrade-deps /home/zuul/test-python",
                                "Requirement already satisfied: pip in /home/zuul/test-python/lib/python3.9/site-packages (21.3.1)",
                                "Collecting pip",
                                "  Downloading pip-26.0.1-py3-none-any.whl (1.8 MB)",
                                "Requirement already satisfied: setuptools in /home/zuul/test-python/lib/python3.9/site-packages (53.0.0)",
                                "Collecting setuptools",
                                "  Downloading setuptools-82.0.1-py3-none-any.whl (1.0 MB)",
                                "Installing collected packages: setuptools, pip",
                                "  Attempting uninstall: setuptools",
                                "    Found existing installation: setuptools 53.0.0",
                                "    Uninstalling setuptools-53.0.0:",
                                "      Successfully uninstalled setuptools-53.0.0",
                                "  Attempting uninstall: pip",
                                "    Found existing installation: pip 21.3.1",
                                "    Uninstalling pip-21.3.1:",
                                "      Successfully uninstalled pip-21.3.1",
                                "Successfully installed pip-26.0.1 setuptools-82.0.1",
                                "+ [[ -d /home/zuul/.cache/pip/wheels ]]",
                                "+ /home/zuul/test-python/bin/pip3 install pip setuptools bindep --upgrade",
                                "Requirement already satisfied: pip in /home/zuul/test-python/lib/python3.9/site-packages (26.0.1)",
                                "Requirement already satisfied: setuptools in /home/zuul/test-python/lib/python3.9/site-packages (82.0.1)",
                                "Collecting bindep",
                                "  Downloading bindep-2.14.0-py3-none-any.whl.metadata (11 kB)",
                                "Collecting distro>=1.7 (from bindep)",
                                "  Downloading distro-1.9.0-py3-none-any.whl.metadata (6.8 kB)",
                                "Collecting packaging (from bindep)",
                                "  Downloading packaging-26.2-py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting Parsley (from bindep)",
                                "  Downloading Parsley-1.3-py2.py3-none-any.whl.metadata (4.1 kB)",
                                "Collecting pbr>=2 (from bindep)",
                                "  Downloading pbr-7.0.3-py2.py3-none-any.whl.metadata (3.8 kB)",
                                "Downloading bindep-2.14.0-py3-none-any.whl (35 kB)",
                                "Downloading distro-1.9.0-py3-none-any.whl (20 kB)",
                                "Downloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)",
                                "Downloading packaging-26.2-py3-none-any.whl (100 kB)",
                                "Downloading Parsley-1.3-py2.py3-none-any.whl (88 kB)",
                                "Installing collected packages: Parsley, pbr, packaging, distro, bindep",
                                "",
                                "Successfully installed Parsley-1.3 bindep-2.14.0 distro-1.9.0 packaging-26.2 pbr-7.0.3",
                                "+ /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/bindep-install",
                                "allexport      \toff",
                                "braceexpand    \ton",
                                "emacs          \toff",
                                "errexit        \ton",
                                "errtrace       \toff",
                                "functrace      \toff",
                                "hashall        \ton",
                                "histexpand     \toff",
                                "history        \toff",
                                "ignoreeof      \toff",
                                "interactive-comments\ton",
                                "keyword        \toff",
                                "monitor        \toff",
                                "noclobber      \toff",
                                "noexec         \toff",
                                "noglob         \toff",
                                "nolog          \toff",
                                "notify         \toff",
                                "nounset        \ton",
                                "onecmd         \toff",
                                "physical       \toff",
                                "pipefail       \ton",
                                "posix          \toff",
                                "privileged     \toff",
                                "verbose        \toff",
                                "vi             \toff",
                                "xtrace         \ton",
                                "+++ readlink -f /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/bindep-install",
                                "++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/bindep-install",
                                "+ export BINDEP_FILE=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/../bindep.txt",
                                "+ BINDEP_FILE=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/../bindep.txt",
                                "+ source /etc/os-release",
                                "++ NAME='CentOS Stream'",
                                "++ VERSION=9",
                                "++ ID=centos",
                                "++ ID_LIKE='rhel fedora'",
                                "++ VERSION_ID=9",
                                "++ PLATFORM_ID=platform:el9",
                                "++ PRETTY_NAME='CentOS Stream 9'",
                                "++ ANSI_COLOR='0;31'",
                                "++ LOGO=fedora-logo-icon",
                                "++ CPE_NAME=cpe:/o:centos:centos:9",
                                "++ HOME_URL=https://centos.org/",
                                "++ BUG_REPORT_URL=https://issues.redhat.com/",
                                "++ REDHAT_SUPPORT_PRODUCT='Red Hat Enterprise Linux 9'",
                                "++ REDHAT_SUPPORT_PRODUCT_VERSION='CentOS Stream'",
                                "++ command -v dnf",
                                "+ RHT_PKG_MGR=/usr/bin/dnf",
                                "+ BINDEP_PKGS=",
                                "+ case ${USE_VENV:-'yes'} in",
                                "++ /home/zuul/test-python/bin/bindep -b -f /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/../bindep.txt test",
                                "++ true",
                                "+ BINDEP_PKGS='python3-jmespath",
                                "python3-libvirt",
                                "python3-lxml",
                                "python3-netaddr'",
                                "+ [[ 61 -gt 0 ]]",
                                "+ case \"${ID,,}\" in",
                                "+ sudo /usr/bin/dnf install -y python3-jmespath python3-libvirt python3-lxml python3-netaddr",
                                "Last metadata expiration check: 0:00:57 ago on Tue 09 Jun 2026 01:02:45 PM UTC.",
                                "Dependencies resolved.",
                                "================================================================================",
                                " Package                Arch        Version                Repository      Size",
                                "================================================================================",
                                "Installing:",
                                " python3-jmespath       noarch      1.0.1-1.el9            appstream       48 k",
                                " python3-libvirt        x86_64      11.10.0-2.el9          appstream      347 k",
                                " python3-lxml           x86_64      4.6.5-3.el9            appstream      1.2 M",
                                " python3-netaddr        noarch      0.10.1-3.el9           appstream      1.5 M",
                                "Installing dependencies:",
                                " cyrus-sasl-gssapi      x86_64      2.1.27-21.el9          baseos          27 k",
                                " libvirt-libs           x86_64      11.10.0-12.el9         appstream      5.5 M",
                                "",
                                "Transaction Summary",
                                "================================================================================",
                                "Install  6 Packages",
                                "",
                                "Total download size: 8.7 M",
                                "Installed size: 45 M",
                                "Downloading Packages:",
                                "(1/6): cyrus-sasl-gssapi-2.1.27-21.el9.x86_64.r 391 kB/s |  27 kB     00:00    ",
                                "(2/6): python3-libvirt-11.10.0-2.el9.x86_64.rpm 7.0 MB/s | 347 kB     00:00    ",
                                "(3/6): python3-jmespath-1.0.1-1.el9.noarch.rpm  396 kB/s |  48 kB     00:00    ",
                                "(4/6): libvirt-libs-11.10.0-12.el9.x86_64.rpm    31 MB/s | 5.5 MB     00:00    ",
                                "(5/6): python3-lxml-4.6.5-3.el9.x86_64.rpm       16 MB/s | 1.2 MB     00:00    ",
                                "(6/6): python3-netaddr-0.10.1-3.el9.noarch.rpm   20 MB/s | 1.5 MB     00:00    ",
                                "--------------------------------------------------------------------------------",
                                "Total                                            15 MB/s | 8.7 MB     00:00     ",
                                "Running transaction check",
                                "Transaction check succeeded.",
                                "Running transaction test",
                                "Transaction test succeeded.",
                                "Running transaction",
                                "  Preparing        :                                                        1/1 ",
                                "  Installing       : cyrus-sasl-gssapi-2.1.27-21.el9.x86_64                 1/6 ",
                                "  Installing       : libvirt-libs-11.10.0-12.el9.x86_64                     2/6 ",
                                "  Installing       : python3-libvirt-11.10.0-2.el9.x86_64                   3/6 ",
                                "  Installing       : python3-netaddr-0.10.1-3.el9.noarch                    4/6 ",
                                "  Installing       : python3-lxml-4.6.5-3.el9.x86_64                        5/6 ",
                                "  Installing       : python3-jmespath-1.0.1-1.el9.noarch                    6/6 ",
                                "  Running scriptlet: python3-jmespath-1.0.1-1.el9.noarch                    6/6 ",
                                "  Verifying        : cyrus-sasl-gssapi-2.1.27-21.el9.x86_64                 1/6 ",
                                "  Verifying        : libvirt-libs-11.10.0-12.el9.x86_64                     2/6 ",
                                "  Verifying        : python3-jmespath-1.0.1-1.el9.noarch                    3/6 ",
                                "  Verifying        : python3-libvirt-11.10.0-2.el9.x86_64                   4/6 ",
                                "  Verifying        : python3-lxml-4.6.5-3.el9.x86_64                        5/6 ",
                                "  Verifying        : python3-netaddr-0.10.1-3.el9.noarch                    6/6 ",
                                "",
                                "Installed:",
                                "  cyrus-sasl-gssapi-2.1.27-21.el9.x86_64  libvirt-libs-11.10.0-12.el9.x86_64   ",
                                "  python3-jmespath-1.0.1-1.el9.noarch     python3-libvirt-11.10.0-2.el9.x86_64 ",
                                "  python3-lxml-4.6.5-3.el9.x86_64         python3-netaddr-0.10.1-3.el9.noarch  ",
                                "",
                                "Complete!",
                                "+ /usr/bin/pip3 install -U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt",
                                "Defaulting to user installation because normal site-packages is not writeable",
                                "Collecting ansible-core==2.15.13",
                                "  Downloading ansible_core-2.15.13-py3-none-any.whl (2.3 MB)",
                                "Collecting oauthlib==3.2.2",
                                "  Downloading oauthlib-3.2.2-py3-none-any.whl (151 kB)",
                                "Collecting kubernetes==35.0.0",
                                "  Downloading kubernetes-35.0.0-py2.py3-none-any.whl (2.0 MB)",
                                "Collecting kubernetes-validate==1.35.0",
                                "  Downloading kubernetes_validate-1.35.0-py3-none-any.whl (18.1 MB)",
                                "Collecting openstacksdk==4.1.0",
                                "  Downloading openstacksdk-4.1.0-py3-none-any.whl (1.7 MB)",
                                "Collecting jsonschema==4.23.0",
                                "  Downloading jsonschema-4.23.0-py3-none-any.whl (88 kB)",
                                "Collecting pyOpenSSL==24.2.1",
                                "  Downloading pyOpenSSL-24.2.1-py3-none-any.whl (58 kB)",
                                "Collecting importlib-resources<5.1,>=5.0",
                                "  Downloading importlib_resources-5.0.7-py3-none-any.whl (24 kB)",
                                "Collecting cryptography",
                                "  Downloading cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (4.7 MB)",
                                "Requirement already satisfied: PyYAML>=5.1 in /usr/lib64/python3.9/site-packages (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 1)) (5.4.1)",
                                "Collecting jinja2>=3.0.0",
                                "  Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)",
                                "Requirement already satisfied: packaging in /usr/lib/python3.9/site-packages (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 1)) (20.9)",
                                "Collecting resolvelib<1.1.0,>=0.5.3",
                                "  Downloading resolvelib-1.0.1-py2.py3-none-any.whl (17 kB)",
                                "Collecting websocket-client!=0.40.0,!=0.41.*,!=0.42.*,>=0.32.0",
                                "  Downloading websocket_client-1.9.0-py3-none-any.whl (82 kB)",
                                "Collecting certifi>=14.05.14",
                                "  Downloading certifi-2026.5.20-py3-none-any.whl (134 kB)",
                                "Collecting durationpy>=0.7",
                                "  Downloading durationpy-0.10-py3-none-any.whl (3.9 kB)",
                                "Requirement already satisfied: six>=1.9.0 in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (1.15.0)",
                                "Requirement already satisfied: python-dateutil>=2.5.3 in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (2.9.0.post0)",
                                "Requirement already satisfied: requests in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (2.25.1)",
                                "Requirement already satisfied: urllib3!=2.6.0,>=1.24.2 in /usr/lib/python3.9/site-packages (from kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (1.26.5)",
                                "Collecting requests-oauthlib",
                                "  Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl (24 kB)",
                                "Collecting referencing",
                                "  Downloading referencing-0.36.2-py3-none-any.whl (26 kB)",
                                "Collecting typing-extensions",
                                "  Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)",
                                "Requirement already satisfied: netifaces>=0.10.4 in /usr/lib64/python3.9/site-packages (from openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (0.10.6)",
                                "Collecting decorator>=4.4.1",
                                "  Downloading decorator-5.3.1-py3-none-any.whl (10 kB)",
                                "Collecting requestsexceptions>=1.2.0",
                                "  Downloading requestsexceptions-1.4.0-py2.py3-none-any.whl (3.8 kB)",
                                "Requirement already satisfied: jmespath>=0.9.0 in /usr/lib/python3.9/site-packages (from openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (1.0.1)",
                                "Collecting pbr!=2.1.0,>=2.0.0",
                                "  Downloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)",
                                "Collecting platformdirs>=3",
                                "  Downloading platformdirs-4.4.0-py3-none-any.whl (18 kB)",
                                "Collecting os-service-types>=1.7.0",
                                "  Downloading os_service_types-1.7.0-py2.py3-none-any.whl (24 kB)",
                                "Collecting keystoneauth1>=3.18.0",
                                "  Downloading keystoneauth1-5.11.1-py3-none-any.whl (344 kB)",
                                "Collecting dogpile.cache>=0.6.5",
                                "  Downloading dogpile_cache-1.4.1-py3-none-any.whl (63 kB)",
                                "Requirement already satisfied: jsonpatch!=1.20,>=1.16 in /usr/lib/python3.9/site-packages (from openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (1.21)",
                                "Collecting iso8601>=0.1.11",
                                "  Downloading iso8601-2.1.0-py3-none-any.whl (7.5 kB)",
                                "Collecting jsonschema-specifications>=2023.03.6",
                                "  Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl (18 kB)",
                                "Collecting attrs>=22.2.0",
                                "  Downloading attrs-26.1.0-py3-none-any.whl (67 kB)",
                                "Collecting rpds-py>=0.7.1",
                                "  Downloading rpds_py-0.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (384 kB)",
                                "Collecting cryptography",
                                "  Downloading cryptography-43.0.3-cp39-abi3-manylinux_2_28_x86_64.whl (4.0 MB)",
                                "Collecting cffi>=1.12",
                                "  Downloading cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (216 kB)",
                                "Collecting stevedore>=3.0.0",
                                "  Downloading stevedore-5.5.0-py3-none-any.whl (49 kB)",
                                "Collecting MarkupSafe>=2.0",
                                "  Downloading markupsafe-3.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (20 kB)",
                                "Requirement already satisfied: jsonpointer>=1.9 in /usr/lib/python3.9/site-packages (from jsonpatch!=1.20,>=1.16->openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (2.0)",
                                "Requirement already satisfied: setuptools in /usr/lib/python3.9/site-packages (from pbr!=2.1.0,>=2.0.0->openstacksdk==4.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 5)) (53.0.0)",
                                "Requirement already satisfied: chardet<5,>=3.0.2 in /usr/lib/python3.9/site-packages (from requests->kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (4.0.0)",
                                "Requirement already satisfied: idna<3,>=2.5 in /usr/lib/python3.9/site-packages (from requests->kubernetes==35.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 3)) (2.10)",
                                "Requirement already satisfied: pyparsing>=2.0.2 in /usr/lib/python3.9/site-packages (from packaging->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/common-requirements.txt (line 1)) (2.4.7)",
                                "Collecting pycparser",
                                "  Downloading pycparser-2.23-py3-none-any.whl (118 kB)",
                                "Installing collected packages: typing-extensions, rpds-py, attrs, referencing, pycparser, pbr, stevedore, os-service-types, oauthlib, MarkupSafe, jsonschema-specifications, iso8601, decorator, cffi, websocket-client, resolvelib, requestsexceptions, requests-oauthlib, platformdirs, keystoneauth1, jsonschema, jinja2, importlib-resources, durationpy, dogpile.cache, cryptography, certifi, pyOpenSSL, openstacksdk, kubernetes-validate, kubernetes, ansible-core",
                                "Successfully installed MarkupSafe-3.0.3 ansible-core-2.15.13 attrs-26.1.0 certifi-2026.5.20 cffi-2.0.0 cryptography-43.0.3 decorator-5.3.1 dogpile.cache-1.4.1 durationpy-0.10 importlib-resources-5.0.7 iso8601-2.1.0 jinja2-3.1.6 jsonschema-4.23.0 jsonschema-specifications-2025.9.1 keystoneauth1-5.11.1 kubernetes-35.0.0 kubernetes-validate-1.35.0 oauthlib-3.2.2 openstacksdk-4.1.0 os-service-types-1.7.0 pbr-7.0.3 platformdirs-4.4.0 pyOpenSSL-24.2.1 pycparser-2.23 referencing-0.36.2 requests-oauthlib-2.0.0 requestsexceptions-1.4.0 resolvelib-1.0.1 rpds-py-0.27.1 stevedore-5.5.0 typing-extensions-4.15.0 websocket-client-1.9.0",
                                "+ /usr/bin/pip3 freeze",
                                "ansible-core==2.15.13",
                                "attrs==26.1.0",
                                "Babel==2.9.1",
                                "certifi==2026.5.20",
                                "cffi==2.0.0",
                                "chardet==4.0.0",
                                "cloud-init==24.4",
                                "cockpit @ file:///builddir/build/BUILD/cockpit-362/tmp/wheel/cockpit-362-py3-none-any.whl",
                                "configobj==5.0.6",
                                "cryptography==43.0.3",
                                "dasbus==1.7",
                                "dbus-python==1.2.18",
                                "decorator==5.3.1",
                                "distro==1.5.0",
                                "dogpile.cache==1.4.1",
                                "durationpy==0.10",
                                "file-magic==0.4.0",
                                "gpg==1.15.1",
                                "idna==2.10",
                                "importlib-resources==5.0.7",
                                "iso8601==2.1.0",
                                "Jinja2==3.1.6",
                                "jmespath==1.0.1",
                                "jsonpatch==1.21",
                                "jsonpointer==2.0",
                                "jsonschema==4.23.0",
                                "jsonschema-specifications==2025.9.1",
                                "keystoneauth1==5.11.1",
                                "kubernetes==35.0.0",
                                "kubernetes-validate==1.35.0",
                                "libcomps==0.1.18",
                                "libvirt-python==11.10.0",
                                "lxml==4.6.5",
                                "MarkupSafe==3.0.3",
                                "netaddr==0.10.1",
                                "netifaces==0.10.6",
                                "oauthlib==3.2.2",
                                "openstacksdk==4.1.0",
                                "os-service-types==1.7.0",
                                "packaging==20.9",
                                "pbr==7.0.3",
                                "pexpect==4.8.0",
                                "platformdirs==4.4.0",
                                "prettytable==0.7.2",
                                "ptyprocess==0.6.0",
                                "pycparser==2.23",
                                "pyenchant==3.2.0",
                                "PyGObject==3.40.1",
                                "pyOpenSSL==24.2.1",
                                "pyparsing==2.4.7",
                                "pyrsistent==0.17.3",
                                "pyserial==3.4",
                                "PySocks==1.7.1",
                                "python-dateutil==2.9.0.post0",
                                "pytz==2021.1",
                                "PyYAML==5.4.1",
                                "referencing==0.36.2",
                                "requests==2.25.1",
                                "requests-oauthlib==2.0.0",
                                "requestsexceptions==1.4.0",
                                "resolvelib==1.0.1",
                                "rpds-py==0.27.1",
                                "rpm==4.16.1.3",
                                "selinux==3.6",
                                "sepolicy==3.6",
                                "setools==4.4.4",
                                "setroubleshoot @ file:///builddir/build/BUILD/setroubleshoot-3.3.35/src",
                                "six==1.15.0",
                                "sos==4.11.0",
                                "stevedore==5.5.0",
                                "systemd-python==234",
                                "typing_extensions==4.15.0",
                                "urllib3==1.26.5",
                                "websocket-client==1.9.0",
                                "+ /home/zuul/test-python/bin/pip3 freeze",
                                "bindep==2.14.0",
                                "distro==1.9.0",
                                "packaging==26.2",
                                "Parsley==1.3",
                                "pbr==7.0.3",
                                "bash scripts/setup_molecule 2>&1 | tee /tmp/setup_molecule.log",
                                "allexport      \toff",
                                "braceexpand    \ton",
                                "emacs          \toff",
                                "errexit        \ton",
                                "errtrace       \toff",
                                "functrace      \toff",
                                "hashall        \ton",
                                "histexpand     \toff",
                                "history        \toff",
                                "ignoreeof      \toff",
                                "interactive-comments\ton",
                                "keyword        \toff",
                                "monitor        \toff",
                                "noclobber      \toff",
                                "noexec         \toff",
                                "noglob         \toff",
                                "nolog          \toff",
                                "notify         \toff",
                                "nounset        \ton",
                                "onecmd         \toff",
                                "physical       \toff",
                                "pipefail       \ton",
                                "posix          \toff",
                                "privileged     \toff",
                                "verbose        \toff",
                                "vi             \toff",
                                "xtrace         \ton",
                                "++++ readlink -f scripts/setup_molecule",
                                "+++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts/setup_molecule",
                                "++ dirname /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/scripts",
                                "+ export PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                "+ PROJECT_DIR=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                "+ export ANSIBLE_SKIP_CONFLICT_CHECK=1",
                                "+ ANSIBLE_SKIP_CONFLICT_CHECK=1",
                                "+ PIP_INSTALL_ARGUMENTS='-U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt'",
                                "+ case ${USE_VENV-'yes'} in",
                                "+ GALAXY=/home/zuul/test-python/bin/ansible-galaxy",
                                "+ PIP=/home/zuul/test-python/bin/pip3",
                                "+ /home/zuul/test-python/bin/pip3 install -U -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt",
                                "Collecting ansible-core==2.15.13 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading ansible_core-2.15.13-py3-none-any.whl.metadata (7.0 kB)",
                                "Collecting molecule==5.1.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading molecule-5.1.0-py3-none-any.whl.metadata (7.8 kB)",
                                "Collecting molecule-plugins==23.5.0 (from molecule-plugins[podman]==23.5.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 5))",
                                "  Downloading molecule_plugins-23.5.0-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting ruamel.yaml==0.18.6 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 6))",
                                "  Downloading ruamel.yaml-0.18.6-py3-none-any.whl.metadata (23 kB)",
                                "Collecting ansi2html==1.9.2 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 7))",
                                "  Downloading ansi2html-1.9.2-py3-none-any.whl.metadata (3.7 kB)",
                                "Collecting dogpile.cache==1.3.3 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))",
                                "  Downloading dogpile.cache-1.3.3-py3-none-any.whl.metadata (5.2 kB)",
                                "Collecting jmespath==1.0.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 9))",
                                "  Downloading jmespath-1.0.1-py3-none-any.whl.metadata (7.6 kB)",
                                "Collecting netaddr==1.3.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 10))",
                                "  Downloading netaddr-1.3.0-py3-none-any.whl.metadata (5.0 kB)",
                                "Collecting dnspython==2.7.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 11))",
                                "  Downloading dnspython-2.7.0-py3-none-any.whl.metadata (5.8 kB)",
                                "Collecting pytest==8.3.3 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))",
                                "  Downloading pytest-8.3.3-py3-none-any.whl.metadata (7.5 kB)",
                                "Collecting pytest-cov==6.0.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 15))",
                                "  Downloading pytest_cov-6.0.0-py3-none-any.whl.metadata (27 kB)",
                                "Collecting pytest-html==4.1.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 16))",
                                "  Downloading pytest_html-4.1.1-py3-none-any.whl.metadata (3.9 kB)",
                                "Collecting pytest-testinfra==10.1.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 17))",
                                "  Downloading pytest_testinfra-10.1.1-py3-none-any.whl.metadata (3.7 kB)",
                                "Collecting pytest-xdist==3.6.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 18))",
                                "  Downloading pytest_xdist-3.6.1-py3-none-any.whl.metadata (4.3 kB)",
                                "Collecting mock==5.1.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 19))",
                                "  Downloading mock-5.1.0-py3-none-any.whl.metadata (3.0 kB)",
                                "Collecting pre-commit==4.0.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading pre_commit-4.0.1-py2.py3-none-any.whl.metadata (1.3 kB)",
                                "Collecting yamllint==1.35.1 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 23))",
                                "  Downloading yamllint-1.35.1-py3-none-any.whl.metadata (4.2 kB)",
                                "Collecting pyspelling==2.10 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading pyspelling-2.10-py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting mkdocs-pymdownx-material-extras==2.6 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading mkdocs_pymdownx_material_extras-2.6-py3-none-any.whl.metadata (5.3 kB)",
                                "Collecting ansi2txt==0.2.0 (from -r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 28))",
                                "  Downloading ansi2txt-0.2.0-py3-none-any.whl.metadata (2.1 kB)",
                                "Collecting jinja2>=3.0.0 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting PyYAML>=5.1 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading pyyaml-6.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)",
                                "Collecting cryptography (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl.metadata (4.3 kB)",
                                "Requirement already satisfied: packaging in /home/zuul/test-python/lib/python3.9/site-packages (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1)) (26.2)",
                                "Collecting resolvelib<1.1.0,>=0.5.3 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading resolvelib-1.0.1-py2.py3-none-any.whl.metadata (4.0 kB)",
                                "Collecting importlib-resources<5.1,>=5.0 (from ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading importlib_resources-5.0.7-py3-none-any.whl.metadata (2.8 kB)",
                                "Collecting ansible-compat>=4.1.2 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading ansible_compat-24.10.0-py3-none-any.whl.metadata (4.0 kB)",
                                "Collecting click<9,>=8.0 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading click-8.1.8-py3-none-any.whl.metadata (2.3 kB)",
                                "Collecting click-help-colors>=0.9 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading click_help_colors-0.9.4-py3-none-any.whl.metadata (4.1 kB)",
                                "Collecting cookiecutter>=1.7.3 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading cookiecutter-2.6.0-py3-none-any.whl.metadata (7.3 kB)",
                                "Collecting enrich>=1.2.7 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading enrich-1.2.7-py3-none-any.whl.metadata (3.9 kB)",
                                "Collecting jsonschema>=4.9.1 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading jsonschema-4.25.1-py3-none-any.whl.metadata (7.6 kB)",
                                "Collecting pluggy<2.0,>=0.7.1 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading pluggy-1.6.0-py3-none-any.whl.metadata (4.8 kB)",
                                "Collecting rich>=9.5.1 (from molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading rich-15.0.0-py3-none-any.whl.metadata (18 kB)",
                                "Collecting ruamel.yaml.clib>=0.2.7 (from ruamel.yaml==0.18.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 6))",
                                "  Downloading ruamel_yaml_clib-0.2.15-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (3.5 kB)",
                                "Collecting decorator>=4.0.0 (from dogpile.cache==1.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))",
                                "  Downloading decorator-5.3.1-py3-none-any.whl.metadata (3.9 kB)",
                                "Collecting stevedore>=3.0.0 (from dogpile.cache==1.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))",
                                "  Downloading stevedore-5.5.0-py3-none-any.whl.metadata (2.2 kB)",
                                "Collecting typing-extensions>=4.0.1 (from dogpile.cache==1.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 8))",
                                "  Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)",
                                "Collecting iniconfig (from pytest==8.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))",
                                "  Downloading iniconfig-2.1.0-py3-none-any.whl.metadata (2.7 kB)",
                                "Collecting exceptiongroup>=1.0.0rc8 (from pytest==8.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))",
                                "  Downloading exceptiongroup-1.3.1-py3-none-any.whl.metadata (6.7 kB)",
                                "Collecting tomli>=1 (from pytest==8.3.3->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 14))",
                                "  Downloading tomli-2.4.1-py3-none-any.whl.metadata (10 kB)",
                                "Collecting coverage>=7.5 (from coverage[toml]>=7.5->pytest-cov==6.0.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 15))",
                                "  Downloading coverage-7.10.7-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (8.9 kB)",
                                "Collecting pytest-metadata>=2.0.0 (from pytest-html==4.1.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 16))",
                                "  Downloading pytest_metadata-3.1.1-py3-none-any.whl.metadata (8.6 kB)",
                                "Collecting execnet>=2.1 (from pytest-xdist==3.6.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 18))",
                                "  Downloading execnet-2.1.2-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting cfgv>=2.0.0 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading cfgv-3.4.0-py2.py3-none-any.whl.metadata (8.5 kB)",
                                "Collecting identify>=1.0.0 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading identify-2.6.15-py2.py3-none-any.whl.metadata (4.4 kB)",
                                "Collecting nodeenv>=0.11.1 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading nodeenv-1.10.0-py2.py3-none-any.whl.metadata (24 kB)",
                                "Collecting virtualenv>=20.10.0 (from pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading virtualenv-21.4.2-py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting pathspec>=0.5.3 (from yamllint==1.35.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 23))",
                                "  Downloading pathspec-1.1.1-py3-none-any.whl.metadata (14 kB)",
                                "Collecting beautifulsoup4 (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading beautifulsoup4-4.15.0-py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting html5lib (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading html5lib-1.1-py2.py3-none-any.whl.metadata (16 kB)",
                                "Collecting lxml (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading lxml-6.1.1-cp39-cp39-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (3.5 kB)",
                                "Collecting markdown (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading markdown-3.9-py3-none-any.whl.metadata (5.1 kB)",
                                "Collecting soupsieve>=1.8 (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading soupsieve-2.8.4-py3-none-any.whl.metadata (4.6 kB)",
                                "Collecting wcmatch>=8.5 (from pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading wcmatch-10.1-py3-none-any.whl.metadata (5.1 kB)",
                                "Collecting mkdocs-material>=8.3.3 (from mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading mkdocs_material-9.7.6-py3-none-any.whl.metadata (19 kB)",
                                "Collecting subprocess-tee>=0.4.1 (from ansible-compat>=4.1.2->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading subprocess_tee-0.4.2-py3-none-any.whl.metadata (3.3 kB)",
                                "Collecting binaryornot>=0.4.4 (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading binaryornot-0.4.4-py2.py3-none-any.whl.metadata (6.0 kB)",
                                "Collecting python-slugify>=4.0.0 (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading python_slugify-8.0.4-py2.py3-none-any.whl.metadata (8.5 kB)",
                                "Collecting requests>=2.23.0 (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading requests-2.32.5-py3-none-any.whl.metadata (4.9 kB)",
                                "Collecting arrow (from cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading arrow-1.4.0-py3-none-any.whl.metadata (7.7 kB)",
                                "Collecting MarkupSafe>=2.0 (from jinja2>=3.0.0->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading markupsafe-3.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)",
                                "Collecting chardet>=3.0.2 (from binaryornot>=0.4.4->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading chardet-5.2.0-py3-none-any.whl.metadata (3.4 kB)",
                                "Collecting attrs>=22.2.0 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading attrs-26.1.0-py3-none-any.whl.metadata (8.8 kB)",
                                "Collecting jsonschema-specifications>=2023.03.6 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting referencing>=0.28.4 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading referencing-0.36.2-py3-none-any.whl.metadata (2.8 kB)",
                                "Collecting rpds-py>=0.7.1 (from jsonschema>=4.9.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading rpds_py-0.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.2 kB)",
                                "Collecting babel>=2.10 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading babel-2.18.0-py3-none-any.whl.metadata (2.2 kB)",
                                "Collecting backrefs>=5.7.post1 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading backrefs-6.2-py39-none-any.whl.metadata (3.0 kB)",
                                "Collecting colorama>=0.4 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)",
                                "Collecting mkdocs-material-extensions>=1.3 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading mkdocs_material_extensions-1.3.1-py3-none-any.whl.metadata (6.9 kB)",
                                "Collecting mkdocs<2,>=1.6 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading mkdocs-1.6.1-py3-none-any.whl.metadata (6.0 kB)",
                                "Collecting paginate>=0.5 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading paginate-0.5.7-py2.py3-none-any.whl.metadata (11 kB)",
                                "Collecting pygments>=2.16 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading pygments-2.20.0-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting pymdown-extensions>=10.2 (from mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading pymdown_extensions-10.21.3-py3-none-any.whl.metadata (3.1 kB)",
                                "Collecting ghp-import>=1.0 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading ghp_import-2.1.0-py3-none-any.whl.metadata (7.2 kB)",
                                "Collecting importlib-metadata>=4.4 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading importlib_metadata-8.7.1-py3-none-any.whl.metadata (4.7 kB)",
                                "Collecting mergedeep>=1.3.4 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading mergedeep-1.3.4-py3-none-any.whl.metadata (4.3 kB)",
                                "Collecting mkdocs-get-deps>=0.2.0 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading mkdocs_get_deps-0.2.2-py3-none-any.whl.metadata (4.0 kB)",
                                "Collecting pyyaml-env-tag>=0.1 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading pyyaml_env_tag-1.1-py3-none-any.whl.metadata (5.5 kB)",
                                "Collecting watchdog>=2.0 (from mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl.metadata (44 kB)",
                                "Collecting python-dateutil>=2.8.1 (from ghp-import>=1.0->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)",
                                "Collecting zipp>=3.20 (from importlib-metadata>=4.4->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading zipp-3.23.1-py3-none-any.whl.metadata (3.6 kB)",
                                "Collecting platformdirs>=2.2.0 (from mkdocs-get-deps>=0.2.0->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading platformdirs-4.4.0-py3-none-any.whl.metadata (12 kB)",
                                "Collecting six>=1.5 (from python-dateutil>=2.8.1->ghp-import>=1.0->mkdocs<2,>=1.6->mkdocs-material>=8.3.3->mkdocs-pymdownx-material-extras==2.6->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 25))",
                                "  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)",
                                "Collecting text-unidecode>=1.3 (from python-slugify>=4.0.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading text_unidecode-1.3-py2.py3-none-any.whl.metadata (2.4 kB)",
                                "Collecting charset_normalizer<4,>=2 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading charset_normalizer-3.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)",
                                "Collecting idna<4,>=2.5 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading idna-3.18-py3-none-any.whl.metadata (6.1 kB)",
                                "Collecting urllib3<3,>=1.21.1 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading urllib3-2.6.3-py3-none-any.whl.metadata (6.9 kB)",
                                "Collecting certifi>=2017.4.17 (from requests>=2.23.0->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading certifi-2026.5.20-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting markdown-it-py>=2.2.0 (from rich>=9.5.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB)",
                                "Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=9.5.1->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)",
                                "Collecting distlib<1,>=0.3.7 (from virtualenv>=20.10.0->pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading distlib-0.4.2-py2.py3-none-any.whl.metadata (5.3 kB)",
                                "Collecting filelock<=3.19.1,>=3.16.1 (from virtualenv>=20.10.0->pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading filelock-3.19.1-py3-none-any.whl.metadata (2.1 kB)",
                                "Collecting python-discovery>=1.4 (from virtualenv>=20.10.0->pre-commit==4.0.1->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 22))",
                                "  Downloading python_discovery-1.4.0-py3-none-any.whl.metadata (5.6 kB)",
                                "Collecting bracex>=2.1.1 (from wcmatch>=8.5->pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading bracex-2.6-py3-none-any.whl.metadata (3.6 kB)",
                                "Collecting tzdata (from arrow->cookiecutter>=1.7.3->molecule==5.1.0->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 4))",
                                "  Downloading tzdata-2026.2-py2.py3-none-any.whl.metadata (1.4 kB)",
                                "Collecting cffi>=2.0.0 (from cryptography->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.6 kB)",
                                "Collecting pycparser (from cffi>=2.0.0->cryptography->ansible-core==2.15.13->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 1))",
                                "  Downloading pycparser-2.23-py3-none-any.whl.metadata (993 bytes)",
                                "Collecting webencodings (from html5lib->pyspelling==2.10->-r /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/test-requirements.txt (line 24))",
                                "  Downloading webencodings-0.5.1-py2.py3-none-any.whl.metadata (2.1 kB)",
                                "Downloading ansible_core-2.15.13-py3-none-any.whl (2.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 23.5 MB/s  0:00:00",
                                "Downloading molecule-5.1.0-py3-none-any.whl (240 kB)",
                                "Downloading molecule_plugins-23.5.0-py3-none-any.whl (68 kB)",
                                "Downloading ruamel.yaml-0.18.6-py3-none-any.whl (117 kB)",
                                "Downloading ansi2html-1.9.2-py3-none-any.whl (17 kB)",
                                "Downloading dogpile.cache-1.3.3-py3-none-any.whl (58 kB)",
                                "Downloading jmespath-1.0.1-py3-none-any.whl (20 kB)",
                                "Downloading netaddr-1.3.0-py3-none-any.whl (2.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 16.8 MB/s  0:00:00",
                                "Downloading dnspython-2.7.0-py3-none-any.whl (313 kB)",
                                "Downloading pytest-8.3.3-py3-none-any.whl (342 kB)",
                                "Downloading pytest_cov-6.0.0-py3-none-any.whl (22 kB)",
                                "Downloading pytest_html-4.1.1-py3-none-any.whl (23 kB)",
                                "Downloading pytest_testinfra-10.1.1-py3-none-any.whl (76 kB)",
                                "Downloading pytest_xdist-3.6.1-py3-none-any.whl (46 kB)",
                                "Downloading mock-5.1.0-py3-none-any.whl (30 kB)",
                                "Downloading pre_commit-4.0.1-py2.py3-none-any.whl (218 kB)",
                                "Downloading yamllint-1.35.1-py3-none-any.whl (66 kB)",
                                "Downloading pyspelling-2.10-py3-none-any.whl (45 kB)",
                                "Downloading mkdocs_pymdownx_material_extras-2.6-py3-none-any.whl (27 kB)",
                                "Downloading ansi2txt-0.2.0-py3-none-any.whl (14 kB)",
                                "Downloading click-8.1.8-py3-none-any.whl (98 kB)",
                                "Downloading importlib_resources-5.0.7-py3-none-any.whl (24 kB)",
                                "Downloading pluggy-1.6.0-py3-none-any.whl (20 kB)",
                                "Downloading resolvelib-1.0.1-py2.py3-none-any.whl (17 kB)",
                                "Downloading ansible_compat-24.10.0-py3-none-any.whl (24 kB)",
                                "Downloading cfgv-3.4.0-py2.py3-none-any.whl (7.2 kB)",
                                "Downloading click_help_colors-0.9.4-py3-none-any.whl (6.4 kB)",
                                "Downloading cookiecutter-2.6.0-py3-none-any.whl (39 kB)",
                                "Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)",
                                "Downloading binaryornot-0.4.4-py2.py3-none-any.whl (9.0 kB)",
                                "Downloading chardet-5.2.0-py3-none-any.whl (199 kB)",
                                "Downloading coverage-7.10.7-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (246 kB)",
                                "Downloading decorator-5.3.1-py3-none-any.whl (10 kB)",
                                "Downloading enrich-1.2.7-py3-none-any.whl (8.7 kB)",
                                "Downloading exceptiongroup-1.3.1-py3-none-any.whl (16 kB)",
                                "Downloading execnet-2.1.2-py3-none-any.whl (40 kB)",
                                "Downloading identify-2.6.15-py2.py3-none-any.whl (99 kB)",
                                "Downloading jsonschema-4.25.1-py3-none-any.whl (90 kB)",
                                "Downloading attrs-26.1.0-py3-none-any.whl (67 kB)",
                                "Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl (18 kB)",
                                "Downloading markupsafe-3.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (20 kB)",
                                "Downloading mkdocs_material-9.7.6-py3-none-any.whl (9.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 9.3/9.3 MB 12.7 MB/s  0:00:00",
                                "Downloading mkdocs-1.6.1-py3-none-any.whl (3.9 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 3.9/3.9 MB 10.0 MB/s  0:00:00",
                                "Downloading babel-2.18.0-py3-none-any.whl (10.2 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 10.2/10.2 MB 36.6 MB/s  0:00:00",
                                "Downloading backrefs-6.2-py39-none-any.whl (381 kB)",
                                "Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)",
                                "Downloading ghp_import-2.1.0-py3-none-any.whl (11 kB)",
                                "Downloading importlib_metadata-8.7.1-py3-none-any.whl (27 kB)",
                                "Downloading markdown-3.9-py3-none-any.whl (107 kB)",
                                "Downloading mergedeep-1.3.4-py3-none-any.whl (6.4 kB)",
                                "Downloading mkdocs_get_deps-0.2.2-py3-none-any.whl (9.6 kB)",
                                "Downloading mkdocs_material_extensions-1.3.1-py3-none-any.whl (8.7 kB)",
                                "Downloading nodeenv-1.10.0-py2.py3-none-any.whl (23 kB)",
                                "Downloading paginate-0.5.7-py2.py3-none-any.whl (13 kB)",
                                "Downloading pathspec-1.1.1-py3-none-any.whl (57 kB)",
                                "Downloading platformdirs-4.4.0-py3-none-any.whl (18 kB)",
                                "Downloading pygments-2.20.0-py3-none-any.whl (1.2 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1.2/1.2 MB 33.5 MB/s  0:00:00",
                                "Downloading pymdown_extensions-10.21.3-py3-none-any.whl (269 kB)",
                                "Downloading pytest_metadata-3.1.1-py3-none-any.whl (11 kB)",
                                "Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)",
                                "Downloading python_slugify-8.0.4-py2.py3-none-any.whl (10 kB)",
                                "Downloading pyyaml-6.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (750 kB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 750.8/750.8 kB 37.4 MB/s  0:00:00",
                                "Downloading pyyaml_env_tag-1.1-py3-none-any.whl (4.7 kB)",
                                "Downloading referencing-0.36.2-py3-none-any.whl (26 kB)",
                                "Downloading requests-2.32.5-py3-none-any.whl (64 kB)",
                                "Downloading charset_normalizer-3.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (208 kB)",
                                "Downloading idna-3.18-py3-none-any.whl (65 kB)",
                                "Downloading urllib3-2.6.3-py3-none-any.whl (131 kB)",
                                "Downloading certifi-2026.5.20-py3-none-any.whl (134 kB)",
                                "Downloading rich-15.0.0-py3-none-any.whl (310 kB)",
                                "Downloading markdown_it_py-3.0.0-py3-none-any.whl (87 kB)",
                                "Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)",
                                "Downloading rpds_py-0.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (384 kB)",
                                "Downloading ruamel_yaml_clib-0.2.15-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (734 kB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 734.1/734.1 kB 35.9 MB/s  0:00:00",
                                "Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)",
                                "Downloading soupsieve-2.8.4-py3-none-any.whl (37 kB)",
                                "Downloading stevedore-5.5.0-py3-none-any.whl (49 kB)",
                                "Downloading subprocess_tee-0.4.2-py3-none-any.whl (5.2 kB)",
                                "Downloading text_unidecode-1.3-py2.py3-none-any.whl (78 kB)",
                                "Downloading tomli-2.4.1-py3-none-any.whl (14 kB)",
                                "Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)",
                                "Downloading virtualenv-21.4.2-py3-none-any.whl (7.6 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 7.6/7.6 MB 82.7 MB/s  0:00:00",
                                "Downloading distlib-0.4.2-py2.py3-none-any.whl (470 kB)",
                                "Downloading filelock-3.19.1-py3-none-any.whl (15 kB)",
                                "Downloading python_discovery-1.4.0-py3-none-any.whl (33 kB)",
                                "Downloading watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl (79 kB)",
                                "Downloading wcmatch-10.1-py3-none-any.whl (39 kB)",
                                "Downloading bracex-2.6-py3-none-any.whl (11 kB)",
                                "Downloading zipp-3.23.1-py3-none-any.whl (10 kB)",
                                "Downloading arrow-1.4.0-py3-none-any.whl (68 kB)",
                                "Downloading beautifulsoup4-4.15.0-py3-none-any.whl (109 kB)",
                                "Downloading cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (4.7 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 4.7/4.7 MB 71.9 MB/s  0:00:00",
                                "Downloading cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (216 kB)",
                                "Downloading html5lib-1.1-py2.py3-none-any.whl (112 kB)",
                                "Downloading iniconfig-2.1.0-py3-none-any.whl (6.0 kB)",
                                "Downloading lxml-6.1.1-cp39-cp39-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (5.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 5.3/5.3 MB 8.4 MB/s  0:00:00",
                                "Downloading pycparser-2.23-py3-none-any.whl (118 kB)",
                                "Downloading tzdata-2026.2-py2.py3-none-any.whl (349 kB)",
                                "Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB)",
                                "Installing collected packages: webencodings, text-unidecode, resolvelib, paginate, distlib, zipp, watchdog, urllib3, tzdata, typing-extensions, tomli, subprocess-tee, stevedore, soupsieve, six, ruamel.yaml.clib, rpds-py, PyYAML, python-slugify, pygments, pycparser, pluggy, platformdirs, pathspec, nodeenv, netaddr, mock, mkdocs-material-extensions, mergedeep, mdurl, MarkupSafe, lxml, jmespath, iniconfig, importlib-resources, idna, identify, filelock, execnet, dnspython, decorator, coverage, colorama, click, charset_normalizer, chardet, cfgv, certifi, bracex, backrefs, babel, attrs, ansi2txt, ansi2html, yamllint, wcmatch, ruamel.yaml, requests, referencing, pyyaml-env-tag, python-discovery, python-dateutil, markdown-it-py, jinja2, importlib-metadata, html5lib, exceptiongroup, dogpile.cache, click-help-colors, cffi, binaryornot, beautifulsoup4, virtualenv, rich, pytest, mkdocs-get-deps, markdown, jsonschema-specifications, ghp-import, cryptography, arrow, pytest-xdist, pytest-testinfra, pytest-metadata, pytest-cov, pyspelling, pymdown-extensions, pre-commit, mkdocs, jsonschema, enrich, cookiecutter, ansible-core, pytest-html, mkdocs-material, ansible-compat, molecule, mkdocs-pymdownx-material-extras, molecule-plugins",
                                "",
                                "Successfully installed MarkupSafe-3.0.3 PyYAML-6.0.3 ansi2html-1.9.2 ansi2txt-0.2.0 ansible-compat-24.10.0 ansible-core-2.15.13 arrow-1.4.0 attrs-26.1.0 babel-2.18.0 backrefs-6.2 beautifulsoup4-4.15.0 binaryornot-0.4.4 bracex-2.6 certifi-2026.5.20 cffi-2.0.0 cfgv-3.4.0 chardet-5.2.0 charset_normalizer-3.4.7 click-8.1.8 click-help-colors-0.9.4 colorama-0.4.6 cookiecutter-2.6.0 coverage-7.10.7 cryptography-48.0.0 decorator-5.3.1 distlib-0.4.2 dnspython-2.7.0 dogpile.cache-1.3.3 enrich-1.2.7 exceptiongroup-1.3.1 execnet-2.1.2 filelock-3.19.1 ghp-import-2.1.0 html5lib-1.1 identify-2.6.15 idna-3.18 importlib-metadata-8.7.1 importlib-resources-5.0.7 iniconfig-2.1.0 jinja2-3.1.6 jmespath-1.0.1 jsonschema-4.25.1 jsonschema-specifications-2025.9.1 lxml-6.1.1 markdown-3.9 markdown-it-py-3.0.0 mdurl-0.1.2 mergedeep-1.3.4 mkdocs-1.6.1 mkdocs-get-deps-0.2.2 mkdocs-material-9.7.6 mkdocs-material-extensions-1.3.1 mkdocs-pymdownx-material-extras-2.6 mock-5.1.0 molecule-5.1.0 molecule-plugins-23.5.0 netaddr-1.3.0 nodeenv-1.10.0 paginate-0.5.7 pathspec-1.1.1 platformdirs-4.4.0 pluggy-1.6.0 pre-commit-4.0.1 pycparser-2.23 pygments-2.20.0 pymdown-extensions-10.21.3 pyspelling-2.10 pytest-8.3.3 pytest-cov-6.0.0 pytest-html-4.1.1 pytest-metadata-3.1.1 pytest-testinfra-10.1.1 pytest-xdist-3.6.1 python-dateutil-2.9.0.post0 python-discovery-1.4.0 python-slugify-8.0.4 pyyaml-env-tag-1.1 referencing-0.36.2 requests-2.32.5 resolvelib-1.0.1 rich-15.0.0 rpds-py-0.27.1 ruamel.yaml-0.18.6 ruamel.yaml.clib-0.2.15 six-1.17.0 soupsieve-2.8.4 stevedore-5.5.0 subprocess-tee-0.4.2 text-unidecode-1.3 tomli-2.4.1 typing-extensions-4.15.0 tzdata-2026.2 urllib3-2.6.3 virtualenv-21.4.2 watchdog-6.0.0 wcmatch-10.1 webencodings-0.5.1 yamllint-1.35.1 zipp-3.23.1",
                                "++ git -C /home/zuul/src/github.com/openstack-k8s-operators/ci-framework rev-parse --short HEAD",
                                "+ GITVER=8da4ba01",
                                "+ [[ '' == \\8\\d\\a\\4\\b\\a\\0\\1 ]]",
                                "+ sed -ri 's/^(version: [0-9.]+).*/\\1+8da4ba01/' /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/galaxy.yml",
                                "+ /home/zuul/test-python/bin/ansible-galaxy collection install --upgrade --force --timeout=120 /home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible-podman-collectionsqb0eklf7'...",
                                "Note: switching to '1.16.2'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 4c84135 Release 1.16.2 version (#873)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.general86afvqlj'...",
                                "Note: switching to '10.0.1'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at eb4c01260 Release 10.0.1.",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible.posixllb1ap2c'...",
                                "Note: switching to '1.6.2'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 31376a3 Merge pull request #583 from saito-hideki/stable-1_v1.6.2",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible.utilsapv5kgyr'...",
                                "Note: switching to 'v5.1.2'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at e213ad9 Release 5.1.2 (#378)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.libvirti4z_6940'...",
                                "Note: switching to '1.3.0'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 7109cb7 Release 1.3.0 commit",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.cryptolpmfgzrf'...",
                                "Note: switching to '2.22.3'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 7adca3ef Release 2.22.3.",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/kubernetes.coreefbk61ea'...",
                                "Note: switching to '5.0.0'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 7b0190f Prepare release 5.0.0 (#733)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible.netcommon351eylmh'...",
                                "Note: switching to 'v7.1.0'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at d2c5fd0 Prep release 7.1.0 (#666)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ansible-config_template7w4n257c'...",
                                "Note: switching to '2.1.1'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 931f6aa Bump version for bugfix release",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/junipernetworks.junos2iygc0iv'...",
                                "Note: switching to 'v9.1.0'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 27bf936 Prepare minor release 9.1.0 (#529)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/cisco.iosblxk4bmb'...",
                                "Note: switching to 'v9.0.3'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at a71f345d Release PR 9.0.3 (#1125)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/mellanox.onyx67cghfyz'...",
                                "Already on 'master'",
                                "Your branch is up to date with 'origin/master'.",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/community.okdxbtlpxr4'...",
                                "Note: switching to '4.0.0'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at 97ed9be Release 4.0.0 (#235)",
                                "Cloning into '/home/zuul/.ansible/tmp/ansible-local-289772rvavb4g/tmpuw8_8ik0/ovirt-ansible-collection538mj1sd'...",
                                "Note: switching to '3.2.0-1'.",
                                "",
                                "You are in 'detached HEAD' state. You can look around, make experimental",
                                "changes and commit them, and you can discard any commits you make in this",
                                "state without impacting any branches by switching back to a branch.",
                                "",
                                "If you want to create a new branch to retain commits you create, you may",
                                "do so (now or later) by using -c with the switch command. Example:",
                                "",
                                "  git switch -c <new-branch-name>",
                                "",
                                "Or undo this operation with:",
                                "",
                                "  git switch -",
                                "",
                                "Turn off this advice by setting config variable advice.detachedHead to false",
                                "",
                                "HEAD is now at ab2e793 ovirt_role: Fix administrative option when set to False",
                                "Starting galaxy collection install process",
                                "Process install dependency map",
                                "Starting collection install process",
                                "Installing 'cifmw.general:1.0.0+8da4ba01' to '/home/zuul/.ansible/collections/ansible_collections/cifmw/general'",
                                "Created collection for cifmw.general:1.0.0+8da4ba01 at /home/zuul/.ansible/collections/ansible_collections/cifmw/general",
                                "cifmw.general:1.0.0+8da4ba01 was installed successfully",
                                "Installing 'containers.podman:1.16.2' to '/home/zuul/.ansible/collections/ansible_collections/containers/podman'",
                                "Created collection for containers.podman:1.16.2 at /home/zuul/.ansible/collections/ansible_collections/containers/podman",
                                "containers.podman:1.16.2 was installed successfully",
                                "Installing 'community.general:10.0.1' to '/home/zuul/.ansible/collections/ansible_collections/community/general'",
                                "Created collection for community.general:10.0.1 at /home/zuul/.ansible/collections/ansible_collections/community/general",
                                "community.general:10.0.1 was installed successfully",
                                "Installing 'ansible.posix:1.6.2' to '/home/zuul/.ansible/collections/ansible_collections/ansible/posix'",
                                "Created collection for ansible.posix:1.6.2 at /home/zuul/.ansible/collections/ansible_collections/ansible/posix",
                                "ansible.posix:1.6.2 was installed successfully",
                                "Installing 'ansible.utils:5.1.2' to '/home/zuul/.ansible/collections/ansible_collections/ansible/utils'",
                                "Created collection for ansible.utils:5.1.2 at /home/zuul/.ansible/collections/ansible_collections/ansible/utils",
                                "ansible.utils:5.1.2 was installed successfully",
                                "Installing 'community.libvirt:1.3.0' to '/home/zuul/.ansible/collections/ansible_collections/community/libvirt'",
                                "Created collection for community.libvirt:1.3.0 at /home/zuul/.ansible/collections/ansible_collections/community/libvirt",
                                "community.libvirt:1.3.0 was installed successfully",
                                "Installing 'community.crypto:2.22.3' to '/home/zuul/.ansible/collections/ansible_collections/community/crypto'",
                                "Created collection for community.crypto:2.22.3 at /home/zuul/.ansible/collections/ansible_collections/community/crypto",
                                "community.crypto:2.22.3 was installed successfully",
                                "Installing 'kubernetes.core:5.0.0' to '/home/zuul/.ansible/collections/ansible_collections/kubernetes/core'",
                                "Created collection for kubernetes.core:5.0.0 at /home/zuul/.ansible/collections/ansible_collections/kubernetes/core",
                                "kubernetes.core:5.0.0 was installed successfully",
                                "Installing 'ansible.netcommon:7.1.0' to '/home/zuul/.ansible/collections/ansible_collections/ansible/netcommon'",
                                "Created collection for ansible.netcommon:7.1.0 at /home/zuul/.ansible/collections/ansible_collections/ansible/netcommon",
                                "ansible.netcommon:7.1.0 was installed successfully",
                                "Installing 'openstack.config_template:2.1.1' to '/home/zuul/.ansible/collections/ansible_collections/openstack/config_template'",
                                "Created collection for openstack.config_template:2.1.1 at /home/zuul/.ansible/collections/ansible_collections/openstack/config_template",
                                "openstack.config_template:2.1.1 was installed successfully",
                                "Installing 'junipernetworks.junos:9.1.0' to '/home/zuul/.ansible/collections/ansible_collections/junipernetworks/junos'",
                                "Created collection for junipernetworks.junos:9.1.0 at /home/zuul/.ansible/collections/ansible_collections/junipernetworks/junos",
                                "junipernetworks.junos:9.1.0 was installed successfully",
                                "Installing 'cisco.ios:9.0.3' to '/home/zuul/.ansible/collections/ansible_collections/cisco/ios'",
                                "Created collection for cisco.ios:9.0.3 at /home/zuul/.ansible/collections/ansible_collections/cisco/ios",
                                "cisco.ios:9.0.3 was installed successfully",
                                "Installing 'mellanox.onyx:1.0.0' to '/home/zuul/.ansible/collections/ansible_collections/mellanox/onyx'",
                                "Created collection for mellanox.onyx:1.0.0 at /home/zuul/.ansible/collections/ansible_collections/mellanox/onyx",
                                "mellanox.onyx:1.0.0 was installed successfully",
                                "Installing 'community.okd:4.0.0' to '/home/zuul/.ansible/collections/ansible_collections/community/okd'",
                                "Created collection for community.okd:4.0.0 at /home/zuul/.ansible/collections/ansible_collections/community/okd",
                                "community.okd:4.0.0 was installed successfully",
                                "Installing '@NAMESPACE@.@NAME@:3.1.4' to '/home/zuul/.ansible/collections/ansible_collections/@NAMESPACE@/@NAME@'",
                                "Created collection for @NAMESPACE@.@NAME@:3.1.4 at /home/zuul/.ansible/collections/ansible_collections/@NAMESPACE@/@NAME@",
                                "@NAMESPACE@.@NAME@:3.1.4 was installed successfully",
                                "+ [[ '' == \\8\\d\\a\\4\\b\\a\\0\\1 ]]",
                                "+ sed -ri 's/^(version: [0-9.]+)+8da4ba01/\\1/' /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/galaxy.yml"
                            ],
                            "target": "setup_molecule",
                            "targets": null
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.122995Z",
                            "start": "2026-06-09T13:03:33.364978Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000008",
                        "name": "Install requirements"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.cron",
                            "changed": false,
                            "false_condition": "cifmw_openshift_crio_stats | default(false)",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.174610Z",
                            "start": "2026-06-09T13:04:55.137879Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000009",
                        "name": "Add cronjob to trigger job stats"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.set_fact",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_facts": {
                                        "zuul_change_list": [
                                            "ci-framework"
                                        ]
                                    },
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "item": {
                                        "branch": "main",
                                        "change": "3773",
                                        "change_message": "[multiple] nova05epsilon: adjust Ceph for BM SNO DCN cases\n\n1.  Adjust ceph.yml post_stage_run hook for DCN conventions\r\n\r\n    The ceph.yml post_stage_run hook (via cifmw_ceph_client role) writes Ceph config files to  \r\n    cifmw_ceph_client_fetch_dir (default /tmp/). This template reads those files and provides them as base64-\r\n    encoded values under data.ceph_conf (DCN convention).\r\n\r\n2.  Allow overriding ssh and storage_mgmt\r\n    \r\n    To allow BM SNO with ceph using custom ceph CIDR values,\r\n    make ssh_network_range and storage_mgmt_network_range overridable via\r\n    cifmw_ceph_ssh_network_range and cifmw_ceph_storage_mgmt_network_range.\r\n    Both are set in set_fact which clobbers extra vars, so we use the\r\n    cifmw_ indirection with default() to preserve original defaults.\r\n    \r\n    NOTE: storage_network_range also needs this treatment.\r\n    It use to be commented out in set_fact, and this change needs\r\n    extra testing with Ceph ci jobs perhaps.\r\n\r\n    Also gather network facts for IP-to-host mapping. \r\n\r\n3. Add a hook for Swift and Ceph RWG on SNO                                                                                                                                                                  \r\n\r\n    On SNO with a single EDPM compute (single-host CephHCI), the Ceph\r\n    ingress service (haproxy/keepalived) is not deployed because the\r\n    ceph_rgw.yml.j2 spec template only creates it for multi-host clusters.\r\n\r\n    Add a hook to correct the Keystone Swift endpoint for this case.\r\n\r\n    The proper fix belongs in cifmw_cephadm/tasks/configure_object.yml\r\n    which should detect whether ingress is deployed and choose VIP:8080\r\n    vs host_ip:8082 accordingly.\r\n\r\nJira: [OSPRH-27641](https://redhat.atlassian.net/browse/OSPRH-27641)\r\nGenerated-by: claude-4.6-opus-high",
                                        "change_url": "https://github.com/openstack-k8s-operators/ci-framework/pull/3773",
                                        "commit_id": "8141be2c8c50fabf8119442736c4b0f3e95ba2c8",
                                        "patchset": "8141be2c8c50fabf8119442736c4b0f3e95ba2c8",
                                        "project": {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/openstack-k8s-operators/ci-framework",
                                            "name": "openstack-k8s-operators/ci-framework",
                                            "short_name": "ci-framework",
                                            "src_dir": "src/github.com/openstack-k8s-operators/ci-framework"
                                        },
                                        "topic": null
                                    }
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.248037Z",
                            "start": "2026-06-09T13:04:55.184164Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-00000000000a",
                        "name": "Construct project change list"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:04:56.053456Z",
                    "start": "2026-06-09T13:04:55.292112Z"
                },
                "id": "0a580a2a-001b-c423-a19e-00000000000c",
                "name": "Run ci/playbooks/build_runner_image.yml"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.meta",
                            "msg": "end_host conditional evaluated to false, continuing execution for controller",
                            "skip_reason": "end_host conditional evaluated to False, continuing execution for controller",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.310899Z",
                            "start": "2026-06-09T13:04:55.299214Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-00000000000e",
                        "name": "Filter out host if needed"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": false,
                            "false_condition": "'edpm-ansible' in zuul_change_list",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.845358Z",
                            "start": "2026-06-09T13:04:55.333510Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-00000000000f",
                        "name": "Get git tag for image tagging"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.set_fact",
                            "changed": false,
                            "false_condition": "'edpm-ansible' in zuul_change_list",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.883041Z",
                            "start": "2026-06-09T13:04:55.854128Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000010",
                        "name": "Set openstack-runner image"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "community.general.make",
                            "changed": false,
                            "false_condition": "'edpm-ansible' in zuul_change_list",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.930053Z",
                            "start": "2026-06-09T13:04:55.892740Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000011",
                        "name": "Build openstack-runner image"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "community.general.make",
                            "changed": false,
                            "false_condition": "'edpm-ansible' in zuul_change_list",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:55.975927Z",
                            "start": "2026-06-09T13:04:55.938466Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000012",
                        "name": "Push openstack-runner image"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.file",
                            "changed": false,
                            "false_condition": "'edpm-ansible' in zuul_change_list",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:56.014037Z",
                            "start": "2026-06-09T13:04:55.985200Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000013",
                        "name": "Make sure ci-framework directory exists"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": false,
                            "false_condition": "'edpm-ansible' in zuul_change_list",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:56.053456Z",
                            "start": "2026-06-09T13:04:56.024276Z"
                        },
                        "id": "0a580a2a-001b-c423-a19e-000000000014",
                        "name": "Create EDPM ansible var file"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 4,
            "failures": 0,
            "ignored": 0,
            "ok": 7,
            "rescued": 0,
            "skipped": 7,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "3",
    "phase": "pre",
    "playbook": "github.com/openstack-k8s-operators/ci-framework/ci/playbooks/dump_zuul_data.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:04:59.909163Z",
                    "start": "2026-06-09T13:04:56.882886Z"
                },
                "id": "0a580a2a-001b-3e39-c105-000000000002",
                "name": "Run ci/playbooks/dump_zuul_data.yml"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/ci-framework-data/artifacts/parameters",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/home/zuul/ci-framework-data/artifacts/parameters",
                                    "state": "absent"
                                }
                            },
                            "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": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/ci-framework-data/artifacts/parameters",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "zuul",
                            "path": "/home/zuul/ci-framework-data/artifacts/parameters",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:57.333555Z",
                            "start": "2026-06-09T13:04:56.895291Z"
                        },
                        "id": "0a580a2a-001b-3e39-c105-000000000004",
                        "name": "Create zuul-output directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.slurp",
                            "changed": false,
                            "content": "YWxsOgogIGNoaWxkcmVuOgogICAgcGVlcnM6CiAgICAgIGhvc3RzOiB7fQogICAgc3dpdGNoOgogICAgICBob3N0czoKICAgICAgICBjb250cm9sbGVyOiBudWxsCiAgICB6dXVsX3VucmVhY2hhYmxlOgogICAgICBob3N0czoge30KICBob3N0czoKICAgIGNvbnRyb2xsZXI6CiAgICAgIGFuc2libGVfY29ubmVjdGlvbjogc3NoCiAgICAgIGFuc2libGVfaG9zdDogMzguMTAyLjgzLjE4OQogICAgICBhbnNpYmxlX3BvcnQ6IDIyCiAgICAgIGFuc2libGVfcHl0aG9uX2ludGVycHJldGVyOiBhdXRvCiAgICAgIGFuc2libGVfdXNlcjogenV1bAogICAgICBjaWZtd19hcmNoaXRlY3R1cmVfcmVwbzogInt7XG4gIFthbnNpYmxlX3VzZXJfZGlyLFxuICAgenV1bC5wcm9qZWN0c1snZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9hcmNoaXRlY3R1cmUnXS5zcmNfZGlyXVxuCiAgICAgICAgXCAgfCBwYXRoX2pvaW5cbn19IgogICAgICBjaWZtd19hcmNoaXRlY3R1cmVfc2NlbmFyaW86IGhjaQogICAgICBjaWZtd19uZXR3b3JraW5nX2Vudl9kZWZfZmlsZV9sb2NhbDogInt7XG4gIFwiXCIgaWYgbm90IGNpZm13X25ldHdvcmtpbmdfZW52X2RlZl9maWxlCiAgICAgICAgZWxzZVxuICAoWyBjaWZtd19hcmNoaXRlY3R1cmVfcmVwbyxcbiAgICBjaWZtd19uZXR3b3JraW5nX2Vudl9kZWZfZmlsZSBdIHwKICAgICAgICBwYXRoX2pvaW4pXG59fSIKICAgICAgY2lmbXdfbmV0d29ya2luZ19tYXBwZXJfbmV0d29ya2luZ19lbnZfZGVmX3BhdGg6ICJ7e1xuICBjaWZtd19uZXR3b3JraW5nX2Vudl9kZWZfZmlsZV9sb2NhbAogICAgICAgIHxcbiAgZGVmYXVsdChbYW5zaWJsZV91c2VyX2RpcixcbiAgenV1bC5wcm9qZWN0c1snZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsnXS5zcmNfZGlyLFxuCiAgICAgICAgXCAnY2kvcGxheWJvb2tzL2ZpbGVzL25ldHdvcmtpbmctZW52LWRlZmluaXRpb24ueW1sJ10gfCBwYXRoX2pvaW4sIHRydWUpXG59fSIKICAgICAgbm9kZXBvb2w6CiAgICAgICAgYXo6IG5vdmEKICAgICAgICBjbG91ZDogdmV4eGhvc3Qtbm9kZXBvb2wtdHJpcGxlbwogICAgICAgIGV4dGVybmFsX2lkOiAxOTBkMTQ2NC0zYjkxLTRiYWQtOTBhNy00YjFjNmM4ZjViNjEKICAgICAgICBob3N0X2lkOiBkMTk3MTBlMzdmN2IyNjIwZWI5ZjFiYzljZmRmYzA2NzMyYjFmMGMzMTIyMTc4MTk0MWRkNDUzMwogICAgICAgIGludGVyZmFjZV9pcDogMzguMTAyLjgzLjE4OQogICAgICAgIGxhYmVsOiBjbG91ZC1jZW50b3MtOS1zdHJlYW0tdHJpcGxlbwogICAgICAgIG5vZGVfcHJvcGVydGllczoge30KICAgICAgICBwcml2YXRlX2lwdjQ6IDM4LjEwMi44My4xODkKICAgICAgICBwcml2YXRlX2lwdjY6IG51bGwKICAgICAgICBwcm92aWRlcjogdmV4eGhvc3Qtbm9kZXBvb2wtdHJpcGxlbwogICAgICAgIHB1YmxpY19pcHY0OiAzOC4xMDIuODMuMTg5CiAgICAgICAgcHVibGljX2lwdjY6ICcnCiAgICAgICAgcmVnaW9uOiBSZWdpb25PbmUKICAgICAgICBzbG90OiBudWxsCiAgICAgIHp1dWxfbm9kZToKICAgICAgICBhejogbm92YQogICAgICAgIGNsb3VkOiB2ZXh4aG9zdC1ub2RlcG9vbC10cmlwbGVvCiAgICAgICAgZXh0ZXJuYWxfaWQ6IDE5MGQxNDY0LTNiOTEtNGJhZC05MGE3LTRiMWM2YzhmNWI2MQogICAgICAgIGhvc3RfaWQ6IGQxOTcxMGUzN2Y3YjI2MjBlYjlmMWJjOWNmZGZjMDY3MzJiMWYwYzMxMjIxNzgxOTQxZGQ0NTMzCiAgICAgICAgaW50ZXJmYWNlX2lwOiAzOC4xMDIuODMuMTg5CiAgICAgICAgbGFiZWw6IGNsb3VkLWNlbnRvcy05LXN0cmVhbS10cmlwbGVvCiAgICAgICAgbm9kZV9wcm9wZXJ0aWVzOiB7fQogICAgICAgIHByaXZhdGVfaXB2NDogMzguMTAyLjgzLjE4OQogICAgICAgIHByaXZhdGVfaXB2NjogbnVsbAogICAgICAgIHByb3ZpZGVyOiB2ZXh4aG9zdC1ub2RlcG9vbC10cmlwbGVvCiAgICAgICAgcHVibGljX2lwdjQ6IDM4LjEwMi44My4xODkKICAgICAgICBwdWJsaWNfaXB2NjogJycKICAgICAgICByZWdpb246IFJlZ2lvbk9uZQogICAgICAgIHNsb3Q6IG51bGwKICAgICAgICB1dWlkOiBudWxsCiAgdmFyczoKICAgIGNpZm13X2FyY2hpdGVjdHVyZV9yZXBvOiAie3tcbiAgW2Fuc2libGVfdXNlcl9kaXIsXG4gICB6dXVsLnByb2plY3RzWydnaXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2FyY2hpdGVjdHVyZSddLnNyY19kaXJdXG4KICAgICAgXCAgfCBwYXRoX2pvaW5cbn19IgogICAgY2lmbXdfYXJjaGl0ZWN0dXJlX3NjZW5hcmlvOiBoY2kKICAgIGNpZm13X25ldHdvcmtpbmdfZW52X2RlZl9maWxlX2xvY2FsOiAie3tcbiAgXCJcIiBpZiBub3QgY2lmbXdfbmV0d29ya2luZ19lbnZfZGVmX2ZpbGUKICAgICAgZWxzZVxuICAoWyBjaWZtd19hcmNoaXRlY3R1cmVfcmVwbyxcbiAgICBjaWZtd19uZXR3b3JraW5nX2Vudl9kZWZfZmlsZSBdIHwgcGF0aF9qb2luKVxufX0iCiAgICBjaWZtd19uZXR3b3JraW5nX21hcHBlcl9uZXR3b3JraW5nX2Vudl9kZWZfcGF0aDogInt7XG4gIGNpZm13X25ldHdvcmtpbmdfZW52X2RlZl9maWxlX2xvY2FsCiAgICAgIHxcbiAgZGVmYXVsdChbYW5zaWJsZV91c2VyX2RpcixcbiAgenV1bC5wcm9qZWN0c1snZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsnXS5zcmNfZGlyLFxuCiAgICAgIFwgJ2NpL3BsYXlib29rcy9maWxlcy9uZXR3b3JraW5nLWVudi1kZWZpbml0aW9uLnltbCddIHwgcGF0aF9qb2luLCB0cnVlKVxufX0iCiAgICB6dXVsOgogICAgICBfaW5oZXJpdGFuY2VfcGF0aDoKICAgICAgLSAnPEpvYiBiYXNlLW1pbmltYWwgZXhwbGljaXQ6IE5vbmUgaW1wbGllZDoge01hdGNoQW55OntJbXBsaWVkQnJhbmNoTWF0Y2hlcjptYXN0ZXJ9fQogICAgICAgIHNvdXJjZTogY29uZmlnL3p1dWwuZC9qb2JzLnlhbWxAbWFzdGVyIzI0PicKICAgICAgLSAnPEpvYiBiYXNlLWNpLWZyYW1ld29yayBleHBsaWNpdDogTm9uZSBpbXBsaWVkOiB7TWF0Y2hBbnk6e0ltcGxpZWRCcmFuY2hNYXRjaGVyOm1hc3Rlcn19CiAgICAgICAgc291cmNlOiBjb25maWcvenV1bC5kL29wZW5zdGFjay1jaS1iYXNlLnlhbWxAbWFzdGVyIzExMD4nCiAgICAgIC0gJzxKb2IgY2lmbXctYmFzZS1taW5pbWFsIGV4cGxpY2l0OiBOb25lIGltcGxpZWQ6IHtNYXRjaEFueTp7SW1wbGllZEJyYW5jaE1hdGNoZXI6bWFpbn19CiAgICAgICAgc291cmNlOiBvcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvenV1bC5kL2Jhc2UueWFtbEBtYWluIzc+JwogICAgICAtICc8Sm9iIGNpZm13LWFyY2hpdGVjdHVyZS12YWxpZGF0ZS1iYXNlIGV4cGxpY2l0OiBOb25lIGltcGxpZWQ6IHtNYXRjaEFueTp7SW1wbGllZEJyYW5jaE1hdGNoZXI6bWFpbn19CiAgICAgICAgc291cmNlOiBvcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvenV1bC5kL2FyY2hpdGVjdHVyZS1qb2JzLnlhbWxAbWFpbiM4PicKICAgICAgLSAnPEpvYiBjaWZtdy1hcmNoaXRlY3R1cmUtdmFsaWRhdGUtaGNpIGV4cGxpY2l0OiBOb25lIGltcGxpZWQ6IHtNYXRjaEFueTp7SW1wbGllZEJyYW5jaE1hdGNoZXI6bWFpbn19CiAgICAgICAgc291cmNlOiBvcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvenV1bC5kL2FyY2hpdGVjdHVyZS1qb2JzLnlhbWxAbWFpbiMzNj4nCiAgICAgIC0gJzxKb2IgY2lmbXctYXJjaGl0ZWN0dXJlLXZhbGlkYXRlLWhjaSBleHBsaWNpdDogTm9uZSBpbXBsaWVkOiBOb25lIHNvdXJjZToKICAgICAgICBvcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvenV1bC5kL3Byb2plY3RzLnlhbWxAbWFpbiMxPicKICAgICAgYW5zaWJsZV92ZXJzaW9uOiAnOScKICAgICAgYXR0ZW1wdHM6IDEKICAgICAgYnJhbmNoOiBtYWluCiAgICAgIGJ1aWxkOiAzYmFkZGI5Yzc3ZjQ0NjEyODczYjU3MmI1YWQ4YTVmNQogICAgICBidWlsZF9yZWZzOgogICAgICAtIGJyYW5jaDogbWFpbgogICAgICAgIGNoYW5nZTogJzM3NzMnCiAgICAgICAgY2hhbmdlX21lc3NhZ2U6ICJbbXVsdGlwbGVdIG5vdmEwNWVwc2lsb246IGFkanVzdCBDZXBoIGZvciBCTSBTTk8gRENOIGNhc2VzXG5cbjEuCiAgICAgICAgICBcIEFkanVzdCBjZXBoLnltbCBwb3N0X3N0YWdlX3J1biBob29rIGZvciBEQ04gY29udmVudGlvbnNcclxuXHJcbiAgICBUaGUKICAgICAgICAgIGNlcGgueW1sIHBvc3Rfc3RhZ2VfcnVuIGhvb2sgKHZpYSBjaWZtd19jZXBoX2NsaWVudCByb2xlKSB3cml0ZXMgQ2VwaCBjb25maWcKICAgICAgICAgIGZpbGVzIHRvICBcclxuICAgIGNpZm13X2NlcGhfY2xpZW50X2ZldGNoX2RpciAoZGVmYXVsdCAvdG1wLykuIFRoaXMgdGVtcGxhdGUKICAgICAgICAgIHJlYWRzIHRob3NlIGZpbGVzIGFuZCBwcm92aWRlcyB0aGVtIGFzIGJhc2U2NC1cclxuICAgIGVuY29kZWQgdmFsdWVzIHVuZGVyCiAgICAgICAgICBkYXRhLmNlcGhfY29uZiAoRENOIGNvbnZlbnRpb24pLlxyXG5cclxuMi4gIEFsbG93IG92ZXJyaWRpbmcgc3NoIGFuZCBzdG9yYWdlX21nbXRcclxuCiAgICAgICAgICBcICAgXHJcbiAgICBUbyBhbGxvdyBCTSBTTk8gd2l0aCBjZXBoIHVzaW5nIGN1c3RvbSBjZXBoIENJRFIgdmFsdWVzLFxyXG4KICAgICAgICAgIFwgICBtYWtlIHNzaF9uZXR3b3JrX3JhbmdlIGFuZCBzdG9yYWdlX21nbXRfbmV0d29ya19yYW5nZSBvdmVycmlkYWJsZSB2aWFcclxuCiAgICAgICAgICBcICAgY2lmbXdfY2VwaF9zc2hfbmV0d29ya19yYW5nZSBhbmQgY2lmbXdfY2VwaF9zdG9yYWdlX21nbXRfbmV0d29ya19yYW5nZS5cclxuCiAgICAgICAgICBcICAgQm90aCBhcmUgc2V0IGluIHNldF9mYWN0IHdoaWNoIGNsb2JiZXJzIGV4dHJhIHZhcnMsIHNvIHdlIHVzZSB0aGVcclxuCiAgICAgICAgICBcICAgY2lmbXdfIGluZGlyZWN0aW9uIHdpdGggZGVmYXVsdCgpIHRvIHByZXNlcnZlIG9yaWdpbmFsIGRlZmF1bHRzLlxyXG4KICAgICAgICAgIFwgICBcclxuICAgIE5PVEU6IHN0b3JhZ2VfbmV0d29ya19yYW5nZSBhbHNvIG5lZWRzIHRoaXMgdHJlYXRtZW50LlxyXG4gICAgSXQKICAgICAgICAgIHVzZSB0byBiZSBjb21tZW50ZWQgb3V0IGluIHNldF9mYWN0LCBhbmQgdGhpcyBjaGFuZ2UgbmVlZHNcclxuICAgIGV4dHJhCiAgICAgICAgICB0ZXN0aW5nIHdpdGggQ2VwaCBjaSBqb2JzIHBlcmhhcHMuXHJcblxyXG4gICAgQWxzbyBnYXRoZXIgbmV0d29yayBmYWN0cwogICAgICAgICAgZm9yIElQLXRvLWhvc3QgbWFwcGluZy4gXHJcblxyXG4zLiBBZGQgYSBob29rIGZvciBTd2lmdCBhbmQgQ2VwaCBSV0cgb24KICAgICAgICAgIFNOTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG5cclxuCiAgICAgICAgICBcICAgT24gU05PIHdpdGggYSBzaW5nbGUgRURQTSBjb21wdXRlIChzaW5nbGUtaG9zdCBDZXBoSENJKSwgdGhlIENlcGhcclxuCiAgICAgICAgICBcICAgaW5ncmVzcyBzZXJ2aWNlIChoYXByb3h5L2tlZXBhbGl2ZWQpIGlzIG5vdCBkZXBsb3llZCBiZWNhdXNlIHRoZVxyXG4KICAgICAgICAgIFwgICBjZXBoX3Jndy55bWwuajIgc3BlYyB0ZW1wbGF0ZSBvbmx5IGNyZWF0ZXMgaXQgZm9yIG11bHRpLWhvc3QgY2x1c3RlcnMuXHJcblxyXG4KICAgICAgICAgIFwgICBBZGQgYSBob29rIHRvIGNvcnJlY3QgdGhlIEtleXN0b25lIFN3aWZ0IGVuZHBvaW50IGZvciB0aGlzIGNhc2UuXHJcblxyXG4KICAgICAgICAgIFwgICBUaGUgcHJvcGVyIGZpeCBiZWxvbmdzIGluIGNpZm13X2NlcGhhZG0vdGFza3MvY29uZmlndXJlX29iamVjdC55bWxcclxuCiAgICAgICAgICBcICAgd2hpY2ggc2hvdWxkIGRldGVjdCB3aGV0aGVyIGluZ3Jlc3MgaXMgZGVwbG95ZWQgYW5kIGNob29zZSBWSVA6ODA4MFxyXG4KICAgICAgICAgIFwgICB2cyBob3N0X2lwOjgwODIgYWNjb3JkaW5nbHkuXHJcblxyXG5KaXJhOiBbT1NQUkgtMjc2NDFdKGh0dHBzOi8vcmVkaGF0LmF0bGFzc2lhbi5uZXQvYnJvd3NlL09TUFJILTI3NjQxKVxyXG5HZW5lcmF0ZWQtYnk6CiAgICAgICAgICBjbGF1ZGUtNC42LW9wdXMtaGlnaCIKICAgICAgICBjaGFuZ2VfdXJsOiBodHRwczovL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrL3B1bGwvMzc3MwogICAgICAgIGNvbW1pdF9pZDogODE0MWJlMmM4YzUwZmFiZjgxMTk0NDI3MzZjNGIwZjNlOTViYTJjOAogICAgICAgIHBhdGNoc2V0OiA4MTQxYmUyYzhjNTBmYWJmODExOTQ0MjczNmM0YjBmM2U5NWJhMmM4CiAgICAgICAgcHJvamVjdDoKICAgICAgICAgIGNhbm9uaWNhbF9ob3N0bmFtZTogZ2l0aHViLmNvbQogICAgICAgICAgY2Fub25pY2FsX25hbWU6IGdpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgICBuYW1lOiBvcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICAgIHNob3J0X25hbWU6IGNpLWZyYW1ld29yawogICAgICAgICAgc3JjX2Rpcjogc3JjL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgc3JjX2Rpcjogc3JjL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgdG9waWM6IG51bGwKICAgICAgYnVpbGRzZXQ6IDIwYmE2ZTY3NTgzZTQ2ZTBhNjgxMGFkNGIwYzBiNThlCiAgICAgIGJ1aWxkc2V0X3JlZnM6CiAgICAgIC0gYnJhbmNoOiBtYWluCiAgICAgICAgY2hhbmdlOiAnMzc3MycKICAgICAgICBjaGFuZ2VfbWVzc2FnZTogIlttdWx0aXBsZV0gbm92YTA1ZXBzaWxvbjogYWRqdXN0IENlcGggZm9yIEJNIFNOTyBEQ04gY2FzZXNcblxuMS4KICAgICAgICAgIFwgQWRqdXN0IGNlcGgueW1sIHBvc3Rfc3RhZ2VfcnVuIGhvb2sgZm9yIERDTiBjb252ZW50aW9uc1xyXG5cclxuICAgIFRoZQogICAgICAgICAgY2VwaC55bWwgcG9zdF9zdGFnZV9ydW4gaG9vayAodmlhIGNpZm13X2NlcGhfY2xpZW50IHJvbGUpIHdyaXRlcyBDZXBoIGNvbmZpZwogICAgICAgICAgZmlsZXMgdG8gIFxyXG4gICAgY2lmbXdfY2VwaF9jbGllbnRfZmV0Y2hfZGlyIChkZWZhdWx0IC90bXAvKS4gVGhpcyB0ZW1wbGF0ZQogICAgICAgICAgcmVhZHMgdGhvc2UgZmlsZXMgYW5kIHByb3ZpZGVzIHRoZW0gYXMgYmFzZTY0LVxyXG4gICAgZW5jb2RlZCB2YWx1ZXMgdW5kZXIKICAgICAgICAgIGRhdGEuY2VwaF9jb25mIChEQ04gY29udmVudGlvbikuXHJcblxyXG4yLiAgQWxsb3cgb3ZlcnJpZGluZyBzc2ggYW5kIHN0b3JhZ2VfbWdtdFxyXG4KICAgICAgICAgIFwgICBcclxuICAgIFRvIGFsbG93IEJNIFNOTyB3aXRoIGNlcGggdXNpbmcgY3VzdG9tIGNlcGggQ0lEUiB2YWx1ZXMsXHJcbgogICAgICAgICAgXCAgIG1ha2Ugc3NoX25ldHdvcmtfcmFuZ2UgYW5kIHN0b3JhZ2VfbWdtdF9uZXR3b3JrX3JhbmdlIG92ZXJyaWRhYmxlIHZpYVxyXG4KICAgICAgICAgIFwgICBjaWZtd19jZXBoX3NzaF9uZXR3b3JrX3JhbmdlIGFuZCBjaWZtd19jZXBoX3N0b3JhZ2VfbWdtdF9uZXR3b3JrX3JhbmdlLlxyXG4KICAgICAgICAgIFwgICBCb3RoIGFyZSBzZXQgaW4gc2V0X2ZhY3Qgd2hpY2ggY2xvYmJlcnMgZXh0cmEgdmFycywgc28gd2UgdXNlIHRoZVxyXG4KICAgICAgICAgIFwgICBjaWZtd18gaW5kaXJlY3Rpb24gd2l0aCBkZWZhdWx0KCkgdG8gcHJlc2VydmUgb3JpZ2luYWwgZGVmYXVsdHMuXHJcbgogICAgICAgICAgXCAgIFxyXG4gICAgTk9URTogc3RvcmFnZV9uZXR3b3JrX3JhbmdlIGFsc28gbmVlZHMgdGhpcyB0cmVhdG1lbnQuXHJcbiAgICBJdAogICAgICAgICAgdXNlIHRvIGJlIGNvbW1lbnRlZCBvdXQgaW4gc2V0X2ZhY3QsIGFuZCB0aGlzIGNoYW5nZSBuZWVkc1xyXG4gICAgZXh0cmEKICAgICAgICAgIHRlc3Rpbmcgd2l0aCBDZXBoIGNpIGpvYnMgcGVyaGFwcy5cclxuXHJcbiAgICBBbHNvIGdhdGhlciBuZXR3b3JrIGZhY3RzCiAgICAgICAgICBmb3IgSVAtdG8taG9zdCBtYXBwaW5nLiBcclxuXHJcbjMuIEFkZCBhIGhvb2sgZm9yIFN3aWZ0IGFuZCBDZXBoIFJXRyBvbgogICAgICAgICAgU05PICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcblxyXG4KICAgICAgICAgIFwgICBPbiBTTk8gd2l0aCBhIHNpbmdsZSBFRFBNIGNvbXB1dGUgKHNpbmdsZS1ob3N0IENlcGhIQ0kpLCB0aGUgQ2VwaFxyXG4KICAgICAgICAgIFwgICBpbmdyZXNzIHNlcnZpY2UgKGhhcHJveHkva2VlcGFsaXZlZCkgaXMgbm90IGRlcGxveWVkIGJlY2F1c2UgdGhlXHJcbgogICAgICAgICAgXCAgIGNlcGhfcmd3LnltbC5qMiBzcGVjIHRlbXBsYXRlIG9ubHkgY3JlYXRlcyBpdCBmb3IgbXVsdGktaG9zdCBjbHVzdGVycy5cclxuXHJcbgogICAgICAgICAgXCAgIEFkZCBhIGhvb2sgdG8gY29ycmVjdCB0aGUgS2V5c3RvbmUgU3dpZnQgZW5kcG9pbnQgZm9yIHRoaXMgY2FzZS5cclxuXHJcbgogICAgICAgICAgXCAgIFRoZSBwcm9wZXIgZml4IGJlbG9uZ3MgaW4gY2lmbXdfY2VwaGFkbS90YXNrcy9jb25maWd1cmVfb2JqZWN0LnltbFxyXG4KICAgICAgICAgIFwgICB3aGljaCBzaG91bGQgZGV0ZWN0IHdoZXRoZXIgaW5ncmVzcyBpcyBkZXBsb3llZCBhbmQgY2hvb3NlIFZJUDo4MDgwXHJcbgogICAgICAgICAgXCAgIHZzIGhvc3RfaXA6ODA4MiBhY2NvcmRpbmdseS5cclxuXHJcbkppcmE6IFtPU1BSSC0yNzY0MV0oaHR0cHM6Ly9yZWRoYXQuYXRsYXNzaWFuLm5ldC9icm93c2UvT1NQUkgtMjc2NDEpXHJcbkdlbmVyYXRlZC1ieToKICAgICAgICAgIGNsYXVkZS00LjYtb3B1cy1oaWdoIgogICAgICAgIGNoYW5nZV91cmw6IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvcHVsbC8zNzczCiAgICAgICAgY29tbWl0X2lkOiA4MTQxYmUyYzhjNTBmYWJmODExOTQ0MjczNmM0YjBmM2U5NWJhMmM4CiAgICAgICAgcGF0Y2hzZXQ6IDgxNDFiZTJjOGM1MGZhYmY4MTE5NDQyNzM2YzRiMGYzZTk1YmEyYzgKICAgICAgICBwcm9qZWN0OgogICAgICAgICAgY2Fub25pY2FsX2hvc3RuYW1lOiBnaXRodWIuY29tCiAgICAgICAgICBjYW5vbmljYWxfbmFtZTogZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICAgIG5hbWU6IG9wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yawogICAgICAgICAgc2hvcnRfbmFtZTogY2ktZnJhbWV3b3JrCiAgICAgICAgICBzcmNfZGlyOiBzcmMvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICBzcmNfZGlyOiBzcmMvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICB0b3BpYzogbnVsbAogICAgICBjaGFuZ2U6ICczNzczJwogICAgICBjaGFuZ2VfbWVzc2FnZTogIlttdWx0aXBsZV0gbm92YTA1ZXBzaWxvbjogYWRqdXN0IENlcGggZm9yIEJNIFNOTyBEQ04gY2FzZXNcblxuMS4KICAgICAgICBcIEFkanVzdCBjZXBoLnltbCBwb3N0X3N0YWdlX3J1biBob29rIGZvciBEQ04gY29udmVudGlvbnNcclxuXHJcbiAgICBUaGUgY2VwaC55bWwKICAgICAgICBwb3N0X3N0YWdlX3J1biBob29rICh2aWEgY2lmbXdfY2VwaF9jbGllbnQgcm9sZSkgd3JpdGVzIENlcGggY29uZmlnIGZpbGVzCiAgICAgICAgdG8gIFxyXG4gICAgY2lmbXdfY2VwaF9jbGllbnRfZmV0Y2hfZGlyIChkZWZhdWx0IC90bXAvKS4gVGhpcyB0ZW1wbGF0ZSByZWFkcwogICAgICAgIHRob3NlIGZpbGVzIGFuZCBwcm92aWRlcyB0aGVtIGFzIGJhc2U2NC1cclxuICAgIGVuY29kZWQgdmFsdWVzIHVuZGVyIGRhdGEuY2VwaF9jb25mCiAgICAgICAgKERDTiBjb252ZW50aW9uKS5cclxuXHJcbjIuICBBbGxvdyBvdmVycmlkaW5nIHNzaCBhbmQgc3RvcmFnZV9tZ210XHJcbiAgICBcclxuCiAgICAgICAgXCAgIFRvIGFsbG93IEJNIFNOTyB3aXRoIGNlcGggdXNpbmcgY3VzdG9tIGNlcGggQ0lEUiB2YWx1ZXMsXHJcbiAgICBtYWtlIHNzaF9uZXR3b3JrX3JhbmdlCiAgICAgICAgYW5kIHN0b3JhZ2VfbWdtdF9uZXR3b3JrX3JhbmdlIG92ZXJyaWRhYmxlIHZpYVxyXG4gICAgY2lmbXdfY2VwaF9zc2hfbmV0d29ya19yYW5nZQogICAgICAgIGFuZCBjaWZtd19jZXBoX3N0b3JhZ2VfbWdtdF9uZXR3b3JrX3JhbmdlLlxyXG4gICAgQm90aCBhcmUgc2V0IGluIHNldF9mYWN0CiAgICAgICAgd2hpY2ggY2xvYmJlcnMgZXh0cmEgdmFycywgc28gd2UgdXNlIHRoZVxyXG4gICAgY2lmbXdfIGluZGlyZWN0aW9uIHdpdGggZGVmYXVsdCgpCiAgICAgICAgdG8gcHJlc2VydmUgb3JpZ2luYWwgZGVmYXVsdHMuXHJcbiAgICBcclxuICAgIE5PVEU6IHN0b3JhZ2VfbmV0d29ya19yYW5nZQogICAgICAgIGFsc28gbmVlZHMgdGhpcyB0cmVhdG1lbnQuXHJcbiAgICBJdCB1c2UgdG8gYmUgY29tbWVudGVkIG91dCBpbiBzZXRfZmFjdCwKICAgICAgICBhbmQgdGhpcyBjaGFuZ2UgbmVlZHNcclxuICAgIGV4dHJhIHRlc3Rpbmcgd2l0aCBDZXBoIGNpIGpvYnMgcGVyaGFwcy5cclxuXHJcbgogICAgICAgIFwgICBBbHNvIGdhdGhlciBuZXR3b3JrIGZhY3RzIGZvciBJUC10by1ob3N0IG1hcHBpbmcuIFxyXG5cclxuMy4gQWRkIGEgaG9vawogICAgICAgIGZvciBTd2lmdCBhbmQgQ2VwaCBSV0cgb24gU05PICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcblxyXG4KICAgICAgICBcICAgT24gU05PIHdpdGggYSBzaW5nbGUgRURQTSBjb21wdXRlIChzaW5nbGUtaG9zdCBDZXBoSENJKSwgdGhlIENlcGhcclxuCiAgICAgICAgXCAgIGluZ3Jlc3Mgc2VydmljZSAoaGFwcm94eS9rZWVwYWxpdmVkKSBpcyBub3QgZGVwbG95ZWQgYmVjYXVzZSB0aGVcclxuICAgIGNlcGhfcmd3LnltbC5qMgogICAgICAgIHNwZWMgdGVtcGxhdGUgb25seSBjcmVhdGVzIGl0IGZvciBtdWx0aS1ob3N0IGNsdXN0ZXJzLlxyXG5cclxuICAgIEFkZCBhIGhvb2sKICAgICAgICB0byBjb3JyZWN0IHRoZSBLZXlzdG9uZSBTd2lmdCBlbmRwb2ludCBmb3IgdGhpcyBjYXNlLlxyXG5cclxuICAgIFRoZSBwcm9wZXIKICAgICAgICBmaXggYmVsb25ncyBpbiBjaWZtd19jZXBoYWRtL3Rhc2tzL2NvbmZpZ3VyZV9vYmplY3QueW1sXHJcbiAgICB3aGljaCBzaG91bGQKICAgICAgICBkZXRlY3Qgd2hldGhlciBpbmdyZXNzIGlzIGRlcGxveWVkIGFuZCBjaG9vc2UgVklQOjgwODBcclxuICAgIHZzIGhvc3RfaXA6ODA4MgogICAgICAgIGFjY29yZGluZ2x5LlxyXG5cclxuSmlyYTogW09TUFJILTI3NjQxXShodHRwczovL3JlZGhhdC5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9PU1BSSC0yNzY0MSlcclxuR2VuZXJhdGVkLWJ5OgogICAgICAgIGNsYXVkZS00LjYtb3B1cy1oaWdoIgogICAgICBjaGFuZ2VfdXJsOiBodHRwczovL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrL3B1bGwvMzc3MwogICAgICBjaGlsZF9qb2JzOiBbXQogICAgICBjb21taXRfaWQ6IDgxNDFiZTJjOGM1MGZhYmY4MTE5NDQyNzM2YzRiMGYzZTk1YmEyYzgKICAgICAgZXZlbnRfaWQ6IDI1MjUwYTYwLTY0MDMtMTFmMS05MjIyLTYxODAwNWIwMjkxYQogICAgICBleGVjdXRvcjoKICAgICAgICBob3N0bmFtZTogMzguMTAyLjgzLjQ3CiAgICAgICAgaW52ZW50b3J5X2ZpbGU6IC92YXIvbGliL3p1dWwvYnVpbGRzLzNiYWRkYjljNzdmNDQ2MTI4NzNiNTcyYjVhZDhhNWY1L2Fuc2libGUvaW52ZW50b3J5LnlhbWwKICAgICAgICBsb2dfcm9vdDogL3Zhci9saWIvenV1bC9idWlsZHMvM2JhZGRiOWM3N2Y0NDYxMjg3M2I1NzJiNWFkOGE1ZjUvd29yay9sb2dzCiAgICAgICAgcmVzdWx0X2RhdGFfZmlsZTogL3Zhci9saWIvenV1bC9idWlsZHMvM2JhZGRiOWM3N2Y0NDYxMjg3M2I1NzJiNWFkOGE1ZjUvd29yay9yZXN1bHRzLmpzb24KICAgICAgICBzcmNfcm9vdDogL3Zhci9saWIvenV1bC9idWlsZHMvM2JhZGRiOWM3N2Y0NDYxMjg3M2I1NzJiNWFkOGE1ZjUvd29yay9zcmMKICAgICAgICB3b3JrX3Jvb3Q6IC92YXIvbGliL3p1dWwvYnVpbGRzLzNiYWRkYjljNzdmNDQ2MTI4NzNiNTcyYjVhZDhhNWY1L3dvcmsKICAgICAgaW5jbHVkZV92YXJzOiBbXQogICAgICBpdGVtczoKICAgICAgLSBicmFuY2g6IG1haW4KICAgICAgICBjaGFuZ2U6ICczNzczJwogICAgICAgIGNoYW5nZV9tZXNzYWdlOiAiW211bHRpcGxlXSBub3ZhMDVlcHNpbG9uOiBhZGp1c3QgQ2VwaCBmb3IgQk0gU05PIERDTiBjYXNlc1xuXG4xLgogICAgICAgICAgXCBBZGp1c3QgY2VwaC55bWwgcG9zdF9zdGFnZV9ydW4gaG9vayBmb3IgRENOIGNvbnZlbnRpb25zXHJcblxyXG4gICAgVGhlCiAgICAgICAgICBjZXBoLnltbCBwb3N0X3N0YWdlX3J1biBob29rICh2aWEgY2lmbXdfY2VwaF9jbGllbnQgcm9sZSkgd3JpdGVzIENlcGggY29uZmlnCiAgICAgICAgICBmaWxlcyB0byAgXHJcbiAgICBjaWZtd19jZXBoX2NsaWVudF9mZXRjaF9kaXIgKGRlZmF1bHQgL3RtcC8pLiBUaGlzIHRlbXBsYXRlCiAgICAgICAgICByZWFkcyB0aG9zZSBmaWxlcyBhbmQgcHJvdmlkZXMgdGhlbSBhcyBiYXNlNjQtXHJcbiAgICBlbmNvZGVkIHZhbHVlcyB1bmRlcgogICAgICAgICAgZGF0YS5jZXBoX2NvbmYgKERDTiBjb252ZW50aW9uKS5cclxuXHJcbjIuICBBbGxvdyBvdmVycmlkaW5nIHNzaCBhbmQgc3RvcmFnZV9tZ210XHJcbgogICAgICAgICAgXCAgIFxyXG4gICAgVG8gYWxsb3cgQk0gU05PIHdpdGggY2VwaCB1c2luZyBjdXN0b20gY2VwaCBDSURSIHZhbHVlcyxcclxuCiAgICAgICAgICBcICAgbWFrZSBzc2hfbmV0d29ya19yYW5nZSBhbmQgc3RvcmFnZV9tZ210X25ldHdvcmtfcmFuZ2Ugb3ZlcnJpZGFibGUgdmlhXHJcbgogICAgICAgICAgXCAgIGNpZm13X2NlcGhfc3NoX25ldHdvcmtfcmFuZ2UgYW5kIGNpZm13X2NlcGhfc3RvcmFnZV9tZ210X25ldHdvcmtfcmFuZ2UuXHJcbgogICAgICAgICAgXCAgIEJvdGggYXJlIHNldCBpbiBzZXRfZmFjdCB3aGljaCBjbG9iYmVycyBleHRyYSB2YXJzLCBzbyB3ZSB1c2UgdGhlXHJcbgogICAgICAgICAgXCAgIGNpZm13XyBpbmRpcmVjdGlvbiB3aXRoIGRlZmF1bHQoKSB0byBwcmVzZXJ2ZSBvcmlnaW5hbCBkZWZhdWx0cy5cclxuCiAgICAgICAgICBcICAgXHJcbiAgICBOT1RFOiBzdG9yYWdlX25ldHdvcmtfcmFuZ2UgYWxzbyBuZWVkcyB0aGlzIHRyZWF0bWVudC5cclxuICAgIEl0CiAgICAgICAgICB1c2UgdG8gYmUgY29tbWVudGVkIG91dCBpbiBzZXRfZmFjdCwgYW5kIHRoaXMgY2hhbmdlIG5lZWRzXHJcbiAgICBleHRyYQogICAgICAgICAgdGVzdGluZyB3aXRoIENlcGggY2kgam9icyBwZXJoYXBzLlxyXG5cclxuICAgIEFsc28gZ2F0aGVyIG5ldHdvcmsgZmFjdHMKICAgICAgICAgIGZvciBJUC10by1ob3N0IG1hcHBpbmcuIFxyXG5cclxuMy4gQWRkIGEgaG9vayBmb3IgU3dpZnQgYW5kIENlcGggUldHIG9uCiAgICAgICAgICBTTk8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuXHJcbgogICAgICAgICAgXCAgIE9uIFNOTyB3aXRoIGEgc2luZ2xlIEVEUE0gY29tcHV0ZSAoc2luZ2xlLWhvc3QgQ2VwaEhDSSksIHRoZSBDZXBoXHJcbgogICAgICAgICAgXCAgIGluZ3Jlc3Mgc2VydmljZSAoaGFwcm94eS9rZWVwYWxpdmVkKSBpcyBub3QgZGVwbG95ZWQgYmVjYXVzZSB0aGVcclxuCiAgICAgICAgICBcICAgY2VwaF9yZ3cueW1sLmoyIHNwZWMgdGVtcGxhdGUgb25seSBjcmVhdGVzIGl0IGZvciBtdWx0aS1ob3N0IGNsdXN0ZXJzLlxyXG5cclxuCiAgICAgICAgICBcICAgQWRkIGEgaG9vayB0byBjb3JyZWN0IHRoZSBLZXlzdG9uZSBTd2lmdCBlbmRwb2ludCBmb3IgdGhpcyBjYXNlLlxyXG5cclxuCiAgICAgICAgICBcICAgVGhlIHByb3BlciBmaXggYmVsb25ncyBpbiBjaWZtd19jZXBoYWRtL3Rhc2tzL2NvbmZpZ3VyZV9vYmplY3QueW1sXHJcbgogICAgICAgICAgXCAgIHdoaWNoIHNob3VsZCBkZXRlY3Qgd2hldGhlciBpbmdyZXNzIGlzIGRlcGxveWVkIGFuZCBjaG9vc2UgVklQOjgwODBcclxuCiAgICAgICAgICBcICAgdnMgaG9zdF9pcDo4MDgyIGFjY29yZGluZ2x5LlxyXG5cclxuSmlyYTogW09TUFJILTI3NjQxXShodHRwczovL3JlZGhhdC5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9PU1BSSC0yNzY0MSlcclxuR2VuZXJhdGVkLWJ5OgogICAgICAgICAgY2xhdWRlLTQuNi1vcHVzLWhpZ2giCiAgICAgICAgY2hhbmdlX3VybDogaHR0cHM6Ly9naXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yay9wdWxsLzM3NzMKICAgICAgICBjb21taXRfaWQ6IDgxNDFiZTJjOGM1MGZhYmY4MTE5NDQyNzM2YzRiMGYzZTk1YmEyYzgKICAgICAgICBwYXRjaHNldDogODE0MWJlMmM4YzUwZmFiZjgxMTk0NDI3MzZjNGIwZjNlOTViYTJjOAogICAgICAgIHByb2plY3Q6CiAgICAgICAgICBjYW5vbmljYWxfaG9zdG5hbWU6IGdpdGh1Yi5jb20KICAgICAgICAgIGNhbm9uaWNhbF9uYW1lOiBnaXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yawogICAgICAgICAgbmFtZTogb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgICBzaG9ydF9uYW1lOiBjaS1mcmFtZXdvcmsKICAgICAgICAgIHNyY19kaXI6IHNyYy9naXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yawogICAgICAgIHRvcGljOiBudWxsCiAgICAgIGpvYjogY2lmbXctYXJjaGl0ZWN0dXJlLXZhbGlkYXRlLWhjaQogICAgICBqb2J0YWdzOiBbXQogICAgICBtYXhfYXR0ZW1wdHM6IDMKICAgICAgbWVzc2FnZTogVzIxMWJIUnBjR3hsWFNCdWIzWmhNRFZsY0hOcGJHOXVPaUJoWkdwMWMzUWdRMlZ3YUNCbWIzSWdRazBnVTA1UElFUkRUaUJqWVhObGN3b0tNUzRnSUVGa2FuVnpkQ0JqWlhCb0xubHRiQ0J3YjNOMFgzTjBZV2RsWDNKMWJpQm9iMjlySUdadmNpQkVRMDRnWTI5dWRtVnVkR2x2Ym5NTkNnMEtJQ0FnSUZSb1pTQmpaWEJvTG5sdGJDQndiM04wWDNOMFlXZGxYM0oxYmlCb2IyOXJJQ2gyYVdFZ1kybG1iWGRmWTJWd2FGOWpiR2xsYm5RZ2NtOXNaU2tnZDNKcGRHVnpJRU5sY0dnZ1kyOXVabWxuSUdacGJHVnpJSFJ2SUNBTkNpQWdJQ0JqYVdadGQxOWpaWEJvWDJOc2FXVnVkRjltWlhSamFGOWthWElnS0dSbFptRjFiSFFnTDNSdGNDOHBMaUJVYUdseklIUmxiWEJzWVhSbElISmxZV1J6SUhSb2IzTmxJR1pwYkdWeklHRnVaQ0J3Y205MmFXUmxjeUIwYUdWdElHRnpJR0poYzJVMk5DME5DaUFnSUNCbGJtTnZaR1ZrSUhaaGJIVmxjeUIxYm1SbGNpQmtZWFJoTG1ObGNHaGZZMjl1WmlBb1JFTk9JR052Ym5abGJuUnBiMjRwTGcwS0RRb3lMaUFnUVd4c2IzY2diM1psY25KcFpHbHVaeUJ6YzJnZ1lXNWtJSE4wYjNKaFoyVmZiV2R0ZEEwS0lDQWdJQTBLSUNBZ0lGUnZJR0ZzYkc5M0lFSk5JRk5PVHlCM2FYUm9JR05sY0dnZ2RYTnBibWNnWTNWemRHOXRJR05sY0dnZ1EwbEVVaUIyWVd4MVpYTXNEUW9nSUNBZ2JXRnJaU0J6YzJoZmJtVjBkMjl5YTE5eVlXNW5aU0JoYm1RZ2MzUnZjbUZuWlY5dFoyMTBYMjVsZEhkdmNtdGZjbUZ1WjJVZ2IzWmxjbkpwWkdGaWJHVWdkbWxoRFFvZ0lDQWdZMmxtYlhkZlkyVndhRjl6YzJoZmJtVjBkMjl5YTE5eVlXNW5aU0JoYm1RZ1kybG1iWGRmWTJWd2FGOXpkRzl5WVdkbFgyMW5iWFJmYm1WMGQyOXlhMTl5WVc1blpTNE5DaUFnSUNCQ2IzUm9JR0Z5WlNCelpYUWdhVzRnYzJWMFgyWmhZM1FnZDJocFkyZ2dZMnh2WW1KbGNuTWdaWGgwY21FZ2RtRnljeXdnYzI4Z2QyVWdkWE5sSUhSb1pRMEtJQ0FnSUdOcFptMTNYeUJwYm1ScGNtVmpkR2x2YmlCM2FYUm9JR1JsWm1GMWJIUW9LU0IwYnlCd2NtVnpaWEoyWlNCdmNtbG5hVzVoYkNCa1pXWmhkV3gwY3k0TkNpQWdJQ0FOQ2lBZ0lDQk9UMVJGT2lCemRHOXlZV2RsWDI1bGRIZHZjbXRmY21GdVoyVWdZV3h6YnlCdVpXVmtjeUIwYUdseklIUnlaV0YwYldWdWRDNE5DaUFnSUNCSmRDQjFjMlVnZEc4Z1ltVWdZMjl0YldWdWRHVmtJRzkxZENCcGJpQnpaWFJmWm1GamRDd2dZVzVrSUhSb2FYTWdZMmhoYm1kbElHNWxaV1J6RFFvZ0lDQWdaWGgwY21FZ2RHVnpkR2x1WnlCM2FYUm9JRU5sY0dnZ1kya2dhbTlpY3lCd1pYSm9ZWEJ6TGcwS0RRb2dJQ0FnUVd4emJ5Qm5ZWFJvWlhJZ2JtVjBkMjl5YXlCbVlXTjBjeUJtYjNJZ1NWQXRkRzh0YUc5emRDQnRZWEJ3YVc1bkxpQU5DZzBLTXk0Z1FXUmtJR0VnYUc5dmF5Qm1iM0lnVTNkcFpuUWdZVzVrSUVObGNHZ2dVbGRISUc5dUlGTk9UeUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQTBLRFFvZ0lDQWdUMjRnVTA1UElIZHBkR2dnWVNCemFXNW5iR1VnUlVSUVRTQmpiMjF3ZFhSbElDaHphVzVuYkdVdGFHOXpkQ0JEWlhCb1NFTkpLU3dnZEdobElFTmxjR2dOQ2lBZ0lDQnBibWR5WlhOeklITmxjblpwWTJVZ0tHaGhjSEp2ZUhrdmEyVmxjR0ZzYVhabFpDa2dhWE1nYm05MElHUmxjR3h2ZVdWa0lHSmxZMkYxYzJVZ2RHaGxEUW9nSUNBZ1kyVndhRjl5WjNjdWVXMXNMbW95SUhOd1pXTWdkR1Z0Y0d4aGRHVWdiMjVzZVNCamNtVmhkR1Z6SUdsMElHWnZjaUJ0ZFd4MGFTMW9iM04wSUdOc2RYTjBaWEp6TGcwS0RRb2dJQ0FnUVdSa0lHRWdhRzl2YXlCMGJ5QmpiM0p5WldOMElIUm9aU0JMWlhsemRHOXVaU0JUZDJsbWRDQmxibVJ3YjJsdWRDQm1iM0lnZEdocGN5QmpZWE5sTGcwS0RRb2dJQ0FnVkdobElIQnliM0JsY2lCbWFYZ2dZbVZzYjI1bmN5QnBiaUJqYVdadGQxOWpaWEJvWVdSdEwzUmhjMnR6TDJOdmJtWnBaM1Z5WlY5dlltcGxZM1F1ZVcxc0RRb2dJQ0FnZDJocFkyZ2djMmh2ZFd4a0lHUmxkR1ZqZENCM2FHVjBhR1Z5SUdsdVozSmxjM01nYVhNZ1pHVndiRzk1WldRZ1lXNWtJR05vYjI5elpTQldTVkE2T0RBNE1BMEtJQ0FnSUhaeklHaHZjM1JmYVhBNk9EQTRNaUJoWTJOdmNtUnBibWRzZVM0TkNnMEtTbWx5WVRvZ1cwOVRVRkpJTFRJM05qUXhYU2hvZEhSd2N6b3ZMM0psWkdoaGRDNWhkR3hoYzNOcFlXNHVibVYwTDJKeWIzZHpaUzlQVTFCU1NDMHlOelkwTVNrTkNrZGxibVZ5WVhSbFpDMWllVG9nWTJ4aGRXUmxMVFF1TmkxdmNIVnpMV2hwWjJnPQogICAgICBwYXRjaHNldDogODE0MWJlMmM4YzUwZmFiZjgxMTk0NDI3MzZjNGIwZjNlOTViYTJjOAogICAgICBwaXBlbGluZTogZ2l0aHViLWNoZWNrCiAgICAgIHBsYXlib29rX2NvbnRleHQ6CiAgICAgICAgcGxheWJvb2tfcHJvamVjdHM6CiAgICAgICAgICB0cnVzdGVkL3Byb2plY3RfMC9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnOgogICAgICAgICAgICBjYW5vbmljYWxfbmFtZTogcmV2aWV3LnJkb3Byb2plY3Qub3JnL2NvbmZpZwogICAgICAgICAgICBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNvbW1pdDogZjQwODZkYTg3ZjMwNDZjOThmMmE0YjkwN2RlYWVlZDM1M2M3YWI0OQogICAgICAgICAgdHJ1c3RlZC9wcm9qZWN0XzEvb3BlbmRldi5vcmcvenV1bC96dXVsLWpvYnM6CiAgICAgICAgICAgIGNhbm9uaWNhbF9uYW1lOiBvcGVuZGV2Lm9yZy96dXVsL3p1dWwtam9icwogICAgICAgICAgICBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNvbW1pdDogODJlM2U4YjEyOTJhMjVlMzgyMzViYjkyYjE1Nzk5MmQzMjY1MzFkMQogICAgICAgICAgdHJ1c3RlZC9wcm9qZWN0XzIvcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzOgogICAgICAgICAgICBjYW5vbmljYWxfbmFtZTogcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzCiAgICAgICAgICAgIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY29tbWl0OiBhZTNmODg0YzZjOGMzMmI3NzlkYzYxZjc1OGMwZjZhNDNhZGU2ODc3CiAgICAgICAgICB1bnRydXN0ZWQvcHJvamVjdF8wL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrOgogICAgICAgICAgICBjYW5vbmljYWxfbmFtZTogZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICAgICAgY2hlY2tvdXQ6IG1haW4KICAgICAgICAgICAgY29tbWl0OiA4ZGE0YmEwMWM3YmI1M2M2MzNmZTIwOGZiMDE0M2E5ZTgyMmNmNGUyCiAgICAgICAgICB1bnRydXN0ZWQvcHJvamVjdF8xL3Jldmlldy5yZG9wcm9qZWN0Lm9yZy9jb25maWc6CiAgICAgICAgICAgIGNhbm9uaWNhbF9uYW1lOiByZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnCiAgICAgICAgICAgIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY29tbWl0OiBmNDA4NmRhODdmMzA0NmM5OGYyYTRiOTA3ZGVhZWVkMzUzYzdhYjQ5CiAgICAgICAgICB1bnRydXN0ZWQvcHJvamVjdF8yL29wZW5kZXYub3JnL3p1dWwvenV1bC1qb2JzOgogICAgICAgICAgICBjYW5vbmljYWxfbmFtZTogb3BlbmRldi5vcmcvenV1bC96dXVsLWpvYnMKICAgICAgICAgICAgY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjb21taXQ6IDgyZTNlOGIxMjkyYTI1ZTM4MjM1YmI5MmIxNTc5OTJkMzI2NTMxZDEKICAgICAgICAgIHVudHJ1c3RlZC9wcm9qZWN0XzMvcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzOgogICAgICAgICAgICBjYW5vbmljYWxfbmFtZTogcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzCiAgICAgICAgICAgIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY29tbWl0OiBhZTNmODg0YzZjOGMzMmI3NzlkYzYxZjc1OGMwZjZhNDNhZGU2ODc3CiAgICAgICAgcGxheWJvb2tzOgogICAgICAgIC0gcGF0aDogdW50cnVzdGVkL3Byb2plY3RfMC9naXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yay9jaS9wbGF5Ym9va3MvYXJjaGl0ZWN0dXJlL3J1bi55bWwKICAgICAgICAgIHJvbGVzOgogICAgICAgICAgLSBjaGVja291dDogbWFpbgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcGxheWJvb2sgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wbGF5Ym9va18wL3JvbGVfMC9jaS1mcmFtZXdvcmsKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzAvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3BsYXlib29rXzAvcm9sZV8wL2NpLWZyYW1ld29yay9yb2xlcwogICAgICAgICAgLSBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNoZWNrb3V0X2Rlc2NyaXB0aW9uOiBwcm9qZWN0IGRlZmF1bHQgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wbGF5Ym9va18wL3JvbGVfMS9jb25maWcKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzEvcmV2aWV3LnJkb3Byb2plY3Qub3JnL2NvbmZpZwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcGxheWJvb2tfMC9yb2xlXzEvY29uZmlnL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3BsYXlib29rXzAvcm9sZV8yL3p1dWwtam9icwogICAgICAgICAgICBsaW5rX3RhcmdldDogdW50cnVzdGVkL3Byb2plY3RfMi9vcGVuZGV2Lm9yZy96dXVsL3p1dWwtam9icwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcGxheWJvb2tfMC9yb2xlXzIvenV1bC1qb2JzL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3BsYXlib29rXzAvcm9sZV8zL3Jkby1qb2JzCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB1bnRydXN0ZWQvcHJvamVjdF8zL3Jldmlldy5yZG9wcm9qZWN0Lm9yZy9yZG8tam9icwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcGxheWJvb2tfMC9yb2xlXzMvcmRvLWpvYnMvcm9sZXMKICAgICAgICBwb3N0X3BsYXlib29rczoKICAgICAgICAtIHBhdGg6IHVudHJ1c3RlZC9wcm9qZWN0XzAvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvY2kvcGxheWJvb2tzL2NvbGxlY3QtbG9ncy55bWwKICAgICAgICAgIHJvbGVzOgogICAgICAgICAgLSBjaGVja291dDogbWFpbgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcGxheWJvb2sgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wb3N0X3BsYXlib29rXzAvcm9sZV8wL2NpLWZyYW1ld29yawogICAgICAgICAgICBsaW5rX3RhcmdldDogdW50cnVzdGVkL3Byb2plY3RfMC9naXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yawogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcG9zdF9wbGF5Ym9va18wL3JvbGVfMC9jaS1mcmFtZXdvcmsvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcG9zdF9wbGF5Ym9va18wL3JvbGVfMS9jb25maWcKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzEvcmV2aWV3LnJkb3Byb2plY3Qub3JnL2NvbmZpZwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcG9zdF9wbGF5Ym9va18wL3JvbGVfMS9jb25maWcvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcG9zdF9wbGF5Ym9va18wL3JvbGVfMi96dXVsLWpvYnMKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzIvb3BlbmRldi5vcmcvenV1bC96dXVsLWpvYnMKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMC9yb2xlXzIvenV1bC1qb2JzL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMC9yb2xlXzMvcmRvLWpvYnMKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzMvcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wb3N0X3BsYXlib29rXzAvcm9sZV8zL3Jkby1qb2JzL3JvbGVzCiAgICAgICAgLSBwYXRoOiB0cnVzdGVkL3Byb2plY3RfMC9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnL3BsYXlib29rcy9iYXNlLW1pbmltYWwvcG9zdC1zc2gueWFtbAogICAgICAgICAgcm9sZXM6CiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHBsYXlib29rIGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcG9zdF9wbGF5Ym9va18xL3JvbGVfMC9jb25maWcKICAgICAgICAgICAgbGlua190YXJnZXQ6IHRydXN0ZWQvcHJvamVjdF8wL3Jldmlldy5yZG9wcm9qZWN0Lm9yZy9jb25maWcKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMS9yb2xlXzAvY29uZmlnL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMS9yb2xlXzEvenV1bC1qb2JzCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB0cnVzdGVkL3Byb2plY3RfMS9vcGVuZGV2Lm9yZy96dXVsL3p1dWwtam9icwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcG9zdF9wbGF5Ym9va18xL3JvbGVfMS96dXVsLWpvYnMvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcG9zdF9wbGF5Ym9va18xL3JvbGVfMi9yZG8tam9icwogICAgICAgICAgICBsaW5rX3RhcmdldDogdHJ1c3RlZC9wcm9qZWN0XzIvcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wb3N0X3BsYXlib29rXzEvcm9sZV8yL3Jkby1qb2JzL3JvbGVzCiAgICAgICAgLSBwYXRoOiB0cnVzdGVkL3Byb2plY3RfMC9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnL3BsYXlib29rcy9iYXNlLW1pbmltYWwvcG9zdC1sb2dzLnlhbWwKICAgICAgICAgIHJvbGVzOgogICAgICAgICAgLSBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNoZWNrb3V0X2Rlc2NyaXB0aW9uOiBwbGF5Ym9vayBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMi9yb2xlXzAvY29uZmlnCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB0cnVzdGVkL3Byb2plY3RfMC9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wb3N0X3BsYXlib29rXzIvcm9sZV8wL2NvbmZpZy9yb2xlcwogICAgICAgICAgLSBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNoZWNrb3V0X2Rlc2NyaXB0aW9uOiBwcm9qZWN0IGRlZmF1bHQgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wb3N0X3BsYXlib29rXzIvcm9sZV8xL3p1dWwtam9icwogICAgICAgICAgICBsaW5rX3RhcmdldDogdHJ1c3RlZC9wcm9qZWN0XzEvb3BlbmRldi5vcmcvenV1bC96dXVsLWpvYnMKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMi9yb2xlXzEvenV1bC1qb2JzL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3Bvc3RfcGxheWJvb2tfMi9yb2xlXzIvcmRvLWpvYnMKICAgICAgICAgICAgbGlua190YXJnZXQ6IHRydXN0ZWQvcHJvamVjdF8yL3Jldmlldy5yZG9wcm9qZWN0Lm9yZy9yZG8tam9icwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcG9zdF9wbGF5Ym9va18yL3JvbGVfMi9yZG8tam9icy9yb2xlcwogICAgICAgIHByZV9wbGF5Ym9va3M6CiAgICAgICAgLSBwYXRoOiB0cnVzdGVkL3Byb2plY3RfMC9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnL3BsYXlib29rcy9iYXNlLW1pbmltYWwvcHJlLnlhbWwKICAgICAgICAgIHJvbGVzOgogICAgICAgICAgLSBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNoZWNrb3V0X2Rlc2NyaXB0aW9uOiBwbGF5Ym9vayBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18wL3JvbGVfMC9jb25maWcKICAgICAgICAgICAgbGlua190YXJnZXQ6IHRydXN0ZWQvcHJvamVjdF8wL3Jldmlldy5yZG9wcm9qZWN0Lm9yZy9jb25maWcKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18wL3JvbGVfMC9jb25maWcvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcHJlX3BsYXlib29rXzAvcm9sZV8xL3p1dWwtam9icwogICAgICAgICAgICBsaW5rX3RhcmdldDogdHJ1c3RlZC9wcm9qZWN0XzEvb3BlbmRldi5vcmcvenV1bC96dXVsLWpvYnMKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18wL3JvbGVfMS96dXVsLWpvYnMvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcHJlX3BsYXlib29rXzAvcm9sZV8yL3Jkby1qb2JzCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB0cnVzdGVkL3Byb2plY3RfMi9yZXZpZXcucmRvcHJvamVjdC5vcmcvcmRvLWpvYnMKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18wL3JvbGVfMi9yZG8tam9icy9yb2xlcwogICAgICAgIC0gcGF0aDogdHJ1c3RlZC9wcm9qZWN0XzAvcmV2aWV3LnJkb3Byb2plY3Qub3JnL2NvbmZpZy9wbGF5Ym9va3MvY2ktZnJhbWV3b3JrLXJkby1iYXNlL3ByZS55YW1sCiAgICAgICAgICByb2xlczoKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcGxheWJvb2sgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wcmVfcGxheWJvb2tfMS9yb2xlXzAvY29uZmlnCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB0cnVzdGVkL3Byb2plY3RfMC9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wcmVfcGxheWJvb2tfMS9yb2xlXzAvY29uZmlnL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18xL3JvbGVfMS96dXVsLWpvYnMKICAgICAgICAgICAgbGlua190YXJnZXQ6IHRydXN0ZWQvcHJvamVjdF8xL29wZW5kZXYub3JnL3p1dWwvenV1bC1qb2JzCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wcmVfcGxheWJvb2tfMS9yb2xlXzEvenV1bC1qb2JzL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18xL3JvbGVfMi9yZG8tam9icwogICAgICAgICAgICBsaW5rX3RhcmdldDogdHJ1c3RlZC9wcm9qZWN0XzIvcmV2aWV3LnJkb3Byb2plY3Qub3JnL3Jkby1qb2JzCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wcmVfcGxheWJvb2tfMS9yb2xlXzIvcmRvLWpvYnMvcm9sZXMKICAgICAgICAtIHBhdGg6IHVudHJ1c3RlZC9wcm9qZWN0XzAvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvY2kvcGxheWJvb2tzL2UyZS1wcmVwYXJlLnltbAogICAgICAgICAgcm9sZXM6CiAgICAgICAgICAtIGNoZWNrb3V0OiBtYWluCiAgICAgICAgICAgIGNoZWNrb3V0X2Rlc2NyaXB0aW9uOiBwbGF5Ym9vayBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18yL3JvbGVfMC9jaS1mcmFtZXdvcmsKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzAvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18yL3JvbGVfMC9jaS1mcmFtZXdvcmsvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcHJlX3BsYXlib29rXzIvcm9sZV8xL2NvbmZpZwogICAgICAgICAgICBsaW5rX3RhcmdldDogdW50cnVzdGVkL3Byb2plY3RfMS9yZXZpZXcucmRvcHJvamVjdC5vcmcvY29uZmlnCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wcmVfcGxheWJvb2tfMi9yb2xlXzEvY29uZmlnL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18yL3JvbGVfMi96dXVsLWpvYnMKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzIvb3BlbmRldi5vcmcvenV1bC96dXVsLWpvYnMKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18yL3JvbGVfMi96dXVsLWpvYnMvcm9sZXMKICAgICAgICAgIC0gY2hlY2tvdXQ6IG1hc3RlcgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgICBsaW5rX25hbWU6IGFuc2libGUvcHJlX3BsYXlib29rXzIvcm9sZV8zL3Jkby1qb2JzCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB1bnRydXN0ZWQvcHJvamVjdF8zL3Jldmlldy5yZG9wcm9qZWN0Lm9yZy9yZG8tam9icwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcHJlX3BsYXlib29rXzIvcm9sZV8zL3Jkby1qb2JzL3JvbGVzCiAgICAgICAgLSBwYXRoOiB1bnRydXN0ZWQvcHJvamVjdF8wL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrL2NpL3BsYXlib29rcy9kdW1wX3p1dWxfZGF0YS55bWwKICAgICAgICAgIHJvbGVzOgogICAgICAgICAgLSBjaGVja291dDogbWFpbgogICAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcGxheWJvb2sgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wcmVfcGxheWJvb2tfMy9yb2xlXzAvY2ktZnJhbWV3b3JrCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB1bnRydXN0ZWQvcHJvamVjdF8wL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wcmVfcGxheWJvb2tfMy9yb2xlXzAvY2ktZnJhbWV3b3JrL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18zL3JvbGVfMS9jb25maWcKICAgICAgICAgICAgbGlua190YXJnZXQ6IHVudHJ1c3RlZC9wcm9qZWN0XzEvcmV2aWV3LnJkb3Byb2plY3Qub3JnL2NvbmZpZwogICAgICAgICAgICByb2xlX3BhdGg6IGFuc2libGUvcHJlX3BsYXlib29rXzMvcm9sZV8xL2NvbmZpZy9yb2xlcwogICAgICAgICAgLSBjaGVja291dDogbWFzdGVyCiAgICAgICAgICAgIGNoZWNrb3V0X2Rlc2NyaXB0aW9uOiBwcm9qZWN0IGRlZmF1bHQgYnJhbmNoCiAgICAgICAgICAgIGxpbmtfbmFtZTogYW5zaWJsZS9wcmVfcGxheWJvb2tfMy9yb2xlXzIvenV1bC1qb2JzCiAgICAgICAgICAgIGxpbmtfdGFyZ2V0OiB1bnRydXN0ZWQvcHJvamVjdF8yL29wZW5kZXYub3JnL3p1dWwvenV1bC1qb2JzCiAgICAgICAgICAgIHJvbGVfcGF0aDogYW5zaWJsZS9wcmVfcGxheWJvb2tfMy9yb2xlXzIvenV1bC1qb2JzL3JvbGVzCiAgICAgICAgICAtIGNoZWNrb3V0OiBtYXN0ZXIKICAgICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHByb2plY3QgZGVmYXVsdCBicmFuY2gKICAgICAgICAgICAgbGlua19uYW1lOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18zL3JvbGVfMy9yZG8tam9icwogICAgICAgICAgICBsaW5rX3RhcmdldDogdW50cnVzdGVkL3Byb2plY3RfMy9yZXZpZXcucmRvcHJvamVjdC5vcmcvcmRvLWpvYnMKICAgICAgICAgICAgcm9sZV9wYXRoOiBhbnNpYmxlL3ByZV9wbGF5Ym9va18zL3JvbGVfMy9yZG8tam9icy9yb2xlcwogICAgICBwb3N0X3JldmlldzogZmFsc2UKICAgICAgcG9zdF90aW1lb3V0OiA1NDAwCiAgICAgIHByZV90aW1lb3V0OiBudWxsCiAgICAgIHByb2plY3Q6CiAgICAgICAgY2Fub25pY2FsX2hvc3RuYW1lOiBnaXRodWIuY29tCiAgICAgICAgY2Fub25pY2FsX25hbWU6IGdpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgbmFtZTogb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgc2hvcnRfbmFtZTogY2ktZnJhbWV3b3JrCiAgICAgICAgc3JjX2Rpcjogc3JjL2dpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgIHByb2plY3RzOgogICAgICAgIGdpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvYXJjaGl0ZWN0dXJlOgogICAgICAgICAgY2Fub25pY2FsX2hvc3RuYW1lOiBnaXRodWIuY29tCiAgICAgICAgICBjYW5vbmljYWxfbmFtZTogZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9hcmNoaXRlY3R1cmUKICAgICAgICAgIGNoZWNrb3V0OiBtYWluCiAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogenV1bCBicmFuY2gKICAgICAgICAgIGNvbW1pdDogZjg2NjBlOTY4MGQxYWY3NmE5ZmQ2N2IwMDlmZDliNGM1ZTc3YTkwOQogICAgICAgICAgbmFtZTogb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvYXJjaGl0ZWN0dXJlCiAgICAgICAgICByZXF1aXJlZDogdHJ1ZQogICAgICAgICAgc2hvcnRfbmFtZTogYXJjaGl0ZWN0dXJlCiAgICAgICAgICBzcmNfZGlyOiBzcmMvZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9hcmNoaXRlY3R1cmUKICAgICAgICBnaXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yazoKICAgICAgICAgIGNhbm9uaWNhbF9ob3N0bmFtZTogZ2l0aHViLmNvbQogICAgICAgICAgY2Fub25pY2FsX25hbWU6IGdpdGh1Yi5jb20vb3BlbnN0YWNrLWs4cy1vcGVyYXRvcnMvY2ktZnJhbWV3b3JrCiAgICAgICAgICBjaGVja291dDogbWFpbgogICAgICAgICAgY2hlY2tvdXRfZGVzY3JpcHRpb246IHp1dWwgYnJhbmNoCiAgICAgICAgICBjb21taXQ6IDhkYTRiYTAxYzdiYjUzYzYzM2ZlMjA4ZmIwMTQzYTllODIyY2Y0ZTIKICAgICAgICAgIG5hbWU6IG9wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yawogICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlCiAgICAgICAgICBzaG9ydF9uYW1lOiBjaS1mcmFtZXdvcmsKICAgICAgICAgIHNyY19kaXI6IHNyYy9naXRodWIuY29tL29wZW5zdGFjay1rOHMtb3BlcmF0b3JzL2NpLWZyYW1ld29yawogICAgICAgIG9wZW5kZXYub3JnL3p1dWwvenV1bC1qb2JzOgogICAgICAgICAgY2Fub25pY2FsX2hvc3RuYW1lOiBvcGVuZGV2Lm9yZwogICAgICAgICAgY2Fub25pY2FsX25hbWU6IG9wZW5kZXYub3JnL3p1dWwvenV1bC1qb2JzCiAgICAgICAgICBjaGVja291dDogbWFzdGVyCiAgICAgICAgICBjaGVja291dF9kZXNjcmlwdGlvbjogcHJvamVjdCBkZWZhdWx0IGJyYW5jaAogICAgICAgICAgY29tbWl0OiA4MmUzZThiMTI5MmEyNWUzODIzNWJiOTJiMTU3OTkyZDMyNjUzMWQxCiAgICAgICAgICBuYW1lOiB6dXVsL3p1dWwtam9icwogICAgICAgICAgcmVxdWlyZWQ6IHRydWUKICAgICAgICAgIHNob3J0X25hbWU6IHp1dWwtam9icwogICAgICAgICAgc3JjX2Rpcjogc3JjL29wZW5kZXYub3JnL3p1dWwvenV1bC1qb2JzCiAgICAgIHJlZjogcmVmcy9wdWxsLzM3NzMvaGVhZAogICAgICByZXNvdXJjZXM6IHt9CiAgICAgIHRlbmFudDogcmRvcHJvamVjdC5vcmcKICAgICAgdGltZW91dDogMTgwMAogICAgICB0b3BpYzogbnVsbAogICAgICB2b3Rpbmc6IHRydWUK",
                            "encoding": "base64",
                            "invocation": {
                                "module_args": {
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/inventory.yaml",
                                    "src": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/inventory.yaml"
                                }
                            },
                            "source": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/zuul-info/inventory.yaml"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:57.817341Z",
                            "start": "2026-06-09T13:04:57.341038Z"
                        },
                        "id": "0a580a2a-001b-3e39-c105-000000000005",
                        "name": "Slurp Zuul inventory test"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "bdf91f194c0ffd3bd3106a1679b6a49bdd1f597a",
                            "dest": "/home/zuul/ci-framework-data/artifacts/zuul_inventory.yml",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "tmpvnhav0bq",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "bdf91f194c0ffd3bd3106a1679b6a49bdd1f597a",
                                    "content": null,
                                    "dest": "/home/zuul/ci-framework-data/artifacts/zuul_inventory.yml",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010297.9576511-22-72604578715308/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "a9f18677dcaa24d5f4114398d578de2d",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 35150,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010297.9576511-22-72604578715308/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:58.983851Z",
                            "start": "2026-06-09T13:04:57.828670Z"
                        },
                        "id": "0a580a2a-001b-3e39-c105-000000000006",
                        "name": "Save zuul inventory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "8fc4fdcbcb21ae7cb080702f5b6be36bd3297f64",
                            "dest": "/home/zuul/ci-framework-data/artifacts/parameters/zuul-params.yml",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "tmp7it_ieez",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "8fc4fdcbcb21ae7cb080702f5b6be36bd3297f64",
                                    "content": null,
                                    "dest": "/home/zuul/ci-framework-data/artifacts/parameters/zuul-params.yml",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": "0644",
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010299.1757114-31-75646633490519/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "0995b1fd8afe13c13315d80f30e31d75",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 20398,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010299.1757114-31-75646633490519/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:04:59.909163Z",
                            "start": "2026-06-09T13:04:58.992040Z"
                        },
                        "id": "0a580a2a-001b-3e39-c105-000000000007",
                        "name": "Save zuul vars without the change_message"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 4,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "run",
    "playbook": "github.com/openstack-k8s-operators/ci-framework/ci/playbooks/architecture/run.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:06:31.924855Z",
                    "start": "2026-06-09T13:05:00.721414Z"
                },
                "id": "0a580a2a-001b-6388-2c9f-000000000002",
                "name": "Run ci/playbooks/architecture/validate-architecture.yml"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.meta",
                            "msg": "end_host conditional evaluated to false, continuing execution for controller",
                            "skip_reason": "end_host conditional evaluated to False, continuing execution for controller",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:05:00.741352Z",
                            "start": "2026-06-09T13:05:00.733213Z"
                        },
                        "id": "0a580a2a-001b-6388-2c9f-000000000004",
                        "name": "Filter out host if needed"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "ansible-playbook",
                                "-i",
                                "localhost,",
                                "-c",
                                "local",
                                "ci/playbooks/architecture/validate-architecture.yml",
                                "-e",
                                "@group_vars/all.yml",
                                "-e",
                                "@/home/zuul/ci-framework-data/artifacts/parameters/zuul-params.yml"
                            ],
                            "delta": "0:01:30.572489",
                            "end": "2026-06-09 13:06:31.802795",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ansible-playbook -i localhost, -c local ci/playbooks/architecture/validate-architecture.yml -e @group_vars/all.yml -e \"@/home/zuul/ci-framework-data/artifacts/parameters/zuul-params.yml\"",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "/home/zuul/src/github.com/openstack-k8s-operators/ci-framework",
                                    "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": "0a580a2a-001b-6388-2c9f-000000000005-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:05:01.230306",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "\nPLAY [Test architecture automations] *******************************************\n\nTASK [Gathering Facts ] ********************************************************\nTuesday 09 June 2026  13:05:01 +0000 (0:00:00.036)       0:00:00.036 ********** \nTuesday 09 June 2026  13:05:01 +0000 (0:00:00.035)       0:00:00.035 ********** \nok: [localhost]\n\nTASK [Assert we have the bare minimum to run quiet=True, that=['cifmw_architecture_repo is defined', 'cifmw_architecture_scenario is defined', 'cifmw_networking_mapper_networking_env_def_path is defined']] ***\nTuesday 09 June 2026  13:05:02 +0000 (0:00:00.924)       0:00:00.961 ********** \nTuesday 09 June 2026  13:05:02 +0000 (0:00:00.924)       0:00:00.960 ********** \nok: [localhost]\n\nTASK [ci_setup : Gather variables for each operating system _raw_params={{ item }}] ***\nTuesday 09 June 2026  13:05:02 +0000 (0:00:00.059)       0:00:01.020 ********** \nTuesday 09 June 2026  13:05:02 +0000 (0:00:00.059)       0:00:01.019 ********** \nok: [localhost] => (item=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_setup/vars/redhat.yml)\n\nTASK [ci_setup : List packages to install var=cifmw_ci_setup_packages] *********\nTuesday 09 June 2026  13:05:02 +0000 (0:00:00.067)       0:00:01.088 ********** \nTuesday 09 June 2026  13:05:02 +0000 (0:00:00.067)       0:00:01.087 ********** \nok: [localhost] => \n    cifmw_ci_setup_packages:\n    - bash-completion\n    - ca-certificates\n    - git-core\n    - make\n    - tar\n    - tmux\n    - python3-pip\n\nTASK [ci_setup : Install needed packages name={{ cifmw_ci_setup_packages }}, state=latest] ***\nTuesday 09 June 2026  13:05:03 +0000 (0:00:00.033)       0:00:01.121 ********** \nTuesday 09 June 2026  13:05:03 +0000 (0:00:00.033)       0:00:01.120 ********** \nchanged: [localhost]\n\nTASK [ci_setup : Gather version of openshift client _raw_params=oc version --client -o yaml] ***\nTuesday 09 June 2026  13:05:07 +0000 (0:00:04.242)       0:00:05.364 ********** \nTuesday 09 June 2026  13:05:07 +0000 (0:00:04.242)       0:00:05.363 ********** \nok: [localhost]\n\nTASK [ci_setup : Ensure openshift client install path is present path={{ cifmw_ci_setup_oc_install_path }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:07 +0000 (0:00:00.312)       0:00:05.676 ********** \nTuesday 09 June 2026  13:05:07 +0000 (0:00:00.312)       0:00:05.675 ********** \nchanged: [localhost]\n\nTASK [ci_setup : Install openshift client src={{ cifmw_ci_setup_openshift_client_download_uri }}/{{ cifmw_ci_setup_openshift_client_version }}/openshift-client-linux.tar.gz, dest={{ cifmw_ci_setup_oc_install_path }}, remote_src=True, mode=0755, creates={{ cifmw_ci_setup_oc_install_path }}/oc] ***\nTuesday 09 June 2026  13:05:07 +0000 (0:00:00.339)       0:00:06.016 ********** \nTuesday 09 June 2026  13:05:07 +0000 (0:00:00.339)       0:00:06.014 ********** \nchanged: [localhost]\n\nTASK [ci_setup : Add the OC path to cifmw_path if needed cifmw_path={{ cifmw_ci_setup_oc_install_path }}:{{ ansible_env.PATH }}, cacheable=True] ***\nTuesday 09 June 2026  13:05:11 +0000 (0:00:03.919)       0:00:09.936 ********** \nTuesday 09 June 2026  13:05:11 +0000 (0:00:03.919)       0:00:09.934 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Create completion file] ***************************************\nTuesday 09 June 2026  13:05:11 +0000 (0:00:00.027)       0:00:09.963 ********** \nTuesday 09 June 2026  13:05:11 +0000 (0:00:00.027)       0:00:09.962 ********** \nchanged: [localhost]\n\nTASK [ci_setup : Source completion from within .bashrc create=True, mode=0644, path={{ ansible_user_dir }}/.bashrc, block=if [ -f ~/.oc_completion ]; then\n  source ~/.oc_completion\nfi] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.286)       0:00:10.249 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.286)       0:00:10.248 ********** \nchanged: [localhost]\n\nTASK [ci_setup : Check rhsm status _raw_params=subscription-manager status] ****\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.332)       0:00:10.582 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.332)       0:00:10.581 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Gather the repos to be enabled _repos={{\n  cifmw_ci_setup_rhel_rhsm_default_repos +\n  (cifmw_ci_setup_rhel_rhsm_extra_repos | default([]))\n}}] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.602 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.601 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Enabling the required repositories. name={{ item }}, state={{ rhsm_repo_state | default('enabled') }}] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.015)       0:00:10.618 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.015)       0:00:10.616 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Get current /etc/redhat-release _raw_params=cat /etc/redhat-release] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.016)       0:00:10.634 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.016)       0:00:10.632 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Print current /etc/redhat-release msg={{ _current_rh_release.stdout }}] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.654 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.653 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Ensure the repos are enabled in the system using yum name={{ item.name }}, baseurl={{ item.baseurl }}, description={{ item.description | default(item.name) }}, gpgcheck={{ item.gpgcheck | default(false) }}, enabled=True, state={{ yum_repo_state | default('present') }}] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.675 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.674 ********** \nskipping: [localhost]\n\nTASK [ci_setup : Manage directories path={{ item }}, state={{ directory_state }}, mode=0755, owner={{ ansible_user_id }}, group={{ ansible_user_id }}] ***\nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.035)       0:00:10.711 ********** \nTuesday 09 June 2026  13:05:12 +0000 (0:00:00.035)       0:00:10.710 ********** \nchanged: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/manifests/openstack/cr)\nchanged: [localhost] => (item=/home/zuul/ci-framework-data/logs)\nchanged: [localhost] => (item=/home/zuul/ci-framework-data/tmp)\nchanged: [localhost] => (item=/home/zuul/ci-framework-data/volumes)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/parameters)\n\nTASK [Create needed directories path={{ item }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:13 +0000 (0:00:01.211)       0:00:11.923 ********** \nTuesday 09 June 2026  13:05:13 +0000 (0:00:01.211)       0:00:11.921 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/logs)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts)\n\nTASK [Check if we have a mock file path={{ _mock_file }}] **********************\nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.358)       0:00:12.281 ********** \nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.358)       0:00:12.280 ********** \nok: [localhost]\n\nTASK [Slurp file from remote src={{ _mock_file }}] *****************************\nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.188)       0:00:12.470 ********** \nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.188)       0:00:12.469 ********** \nskipping: [localhost]\n\nTASK [Copy file on localhost dest={{ lookup('env', 'HOME') ~ '/' ~ cifmw_architecture_scenario ~ '.yml' }}, mode=0644, content={{ _mock_content.content | b64decode }}] ***\nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.026)       0:00:12.496 ********** \nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.026)       0:00:12.495 ********** \nskipping: [localhost]\n\nTASK [Include var file file={{ lookup('env', 'HOME') ~ '/' ~ cifmw_architecture_scenario ~ '.yml' }}] ***\nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.025)       0:00:12.522 ********** \nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.025)       0:00:12.521 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure that architecture repo exists repo={{ cifmw_kustomize_deploy_architecture_repo_url }}, dest={{ cifmw_kustomize_deploy_architecture_repo_dest_dir }}, update=False, version={{ cifmw_kustomize_deploy_architecture_repo_version }}] ***\nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.022)       0:00:12.544 ********** \nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.022)       0:00:12.543 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Gather the list of scenario folders paths={{ _va_scenario_dir }}, patterns=kustomization.y*ml, recurse=True] ***\nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.369)       0:00:12.914 ********** \nTuesday 09 June 2026  13:05:14 +0000 (0:00:00.369)       0:00:12.912 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Check if scenario is in the list msg=You need to properly set the `cifmw_architecture_scenario` variable in order to select the architecture-based scenario to deploy. You can take a list of scenario in the `examples/va` folder in the architecture repo.\n] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.389)       0:00:13.303 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.389)       0:00:13.302 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure that destination directory exists path={{ cifmw_kustomize_deploy_kustomizations_dest_dir }}, mode=0755, state=directory] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.038)       0:00:13.342 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.038)       0:00:13.341 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Set the final cifmw_architecture_user_kustomize based on its patches _cifmw_kustomize_deploy_user_kustomize={{\n  _cifmw_kustomize_deploy_user_kustomize |\n  default({}) |\n  combine(item.value, recursive=True)\n}}] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.226)       0:00:13.568 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.226)       0:00:13.567 ********** \nok: [localhost] => (item=cifmw_architecture_user_kustomize)\n\nTASK [kustomize_deploy : Set the final cifmw_architecture_user_kustomize_base64 based on its patches _cifmw_kustomize_deploy_user_base64_kustomize={{\n  _b64_kustomize_user_patches |\n  ci_kustomize_deploy_combine_base64_patch_dict\n}}] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.102)       0:00:13.670 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.101)       0:00:13.669 ********** \nok: [localhost]\n\nTASK [networking_mapper : Check for Networking Environment Definition file existence path={{ cifmw_networking_mapper_networking_env_def_path }}] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.116)       0:00:13.787 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.116)       0:00:13.785 ********** \nok: [localhost]\n\nTASK [networking_mapper : Check for Networking Definition file existance that=['_net_env_def_stat.stat.exists'], msg=Ensure that the Networking Environment Definition file exists in {{ cifmw_networking_mapper_networking_env_def_path }}, quiet=True] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.257)       0:00:14.044 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.257)       0:00:14.043 ********** \nok: [localhost]\n\nTASK [networking_mapper : Load the Networking Definition from file path={{ cifmw_networking_mapper_networking_env_def_path }}] ***\nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.059)       0:00:14.104 ********** \nTuesday 09 June 2026  13:05:15 +0000 (0:00:00.059)       0:00:14.103 ********** \nok: [localhost]\n\nTASK [networking_mapper : Set cifmw_networking_env_definition is present cifmw_networking_env_definition={{\n  _net_env_def_slurp['content'] |\n  b64decode |\n  from_yaml\n}}, cacheable=True] ***\nTuesday 09 June 2026  13:05:16 +0000 (0:00:00.290)       0:00:14.395 ********** \nTuesday 09 June 2026  13:05:16 +0000 (0:00:00.290)       0:00:14.394 ********** \nok: [localhost]\n\nTASK [Discover automation files paths={{\n  [cifmw_architecture_repo, _automation_relative] |\n  path_join\n}}, patterns=*.yaml] ***\nTuesday 09 June 2026  13:05:16 +0000 (0:00:00.080)       0:00:14.476 ********** \nTuesday 09 June 2026  13:05:16 +0000 (0:00:00.080)       0:00:14.474 ********** \nok: [localhost]\n\nTASK [Get automation contents path={{ item.path }}] ****************************\nTuesday 09 June 2026  13:05:16 +0000 (0:00:00.251)       0:00:14.727 ********** \nTuesday 09 June 2026  13:05:16 +0000 (0:00:00.251)       0:00:14.726 ********** \nok: [localhost] => (item=bgp-l3-xl-adoption.yaml)\nok: [localhost] => (item=bgp-l3-xl.yaml)\nok: [localhost] => (item=bgp_dt01.yaml)\nok: [localhost] => (item=bgp_dt04_ipv6.yaml)\nok: [localhost] => (item=bmo01.yaml)\nok: [localhost] => (item=dcn.yaml)\nok: [localhost] => (item=dt-sharded.yaml)\nok: [localhost] => (item=dz-storage.yaml)\nok: [localhost] => (item=hci-adoption.yaml)\nok: [localhost] => (item=hci-ironic.yaml)\nok: [localhost] => (item=hci.yaml)\nok: [localhost] => (item=multi-namespace-skmo.yaml)\nok: [localhost] => (item=multi-namespace.yaml)\nok: [localhost] => (item=nfv-ovs-dpdk-sriov-adoption.yaml)\nok: [localhost] => (item=nfv-ovs-dpdk-sriov-hci.yaml)\nok: [localhost] => (item=nova-three-cells.yaml)\nok: [localhost] => (item=nova01alpha.yaml)\nok: [localhost] => (item=nova02beta.yaml)\nok: [localhost] => (item=nova03gamma.yaml)\nok: [localhost] => (item=nova04delta-adoption.yaml)\nok: [localhost] => (item=nova04delta.yaml)\nok: [localhost] => (item=nova05epsilon.yaml)\nok: [localhost] => (item=nvidia-mdev.yaml)\nok: [localhost] => (item=nvidia-vfio-passthrough-adoption.yaml)\nok: [localhost] => (item=nvidia-vfio-passthrough.yaml)\nok: [localhost] => (item=osasinfra-ipv6.yaml)\nok: [localhost] => (item=osasinfra.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-2nodesets.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-ipv6-2nodesets.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-ipv6.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-networker.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov.yaml)\nok: [localhost] => (item=ovs-dpdk.yaml)\nok: [localhost] => (item=pidone.yaml)\nok: [localhost] => (item=sriov.yaml)\nok: [localhost] => (item=uni01alpha-adoption.yaml)\nok: [localhost] => (item=uni01alpha.yaml)\nok: [localhost] => (item=uni02beta-adoption.yaml)\nok: [localhost] => (item=uni02beta.yaml)\nok: [localhost] => (item=uni04delta-adoption.yaml)\nok: [localhost] => (item=uni04delta-ipv6-adoption.yaml)\nok: [localhost] => (item=uni04delta-ipv6.yaml)\nok: [localhost] => (item=uni04delta.yaml)\nok: [localhost] => (item=uni05epsilon-adoption.yaml)\nok: [localhost] => (item=uni05epsilon.yaml)\nok: [localhost] => (item=uni06zeta-adoption.yaml)\nok: [localhost] => (item=uni06zeta.yaml)\nok: [localhost] => (item=uni07eta-adoption.yaml)\nok: [localhost] => (item=uni07eta.yaml)\nok: [localhost] => (item=uni09iota-adoption.yaml)\nok: [localhost] => (item=uni09iota.yaml)\nok: [localhost] => (item=vhosts-compact.yaml)\n\nTASK [Load automation files as fact vas={{\n  vas | default({}) |\n  combine(item.content | b64decode | from_yaml, recursive=true)\n}}] ***\nTuesday 09 June 2026  13:05:24 +0000 (0:00:07.798)       0:00:22.525 ********** \nTuesday 09 June 2026  13:05:24 +0000 (0:00:07.798)       0:00:22.524 ********** \nok: [localhost] => (item=bgp-l3-xl-adoption.yaml)\nok: [localhost] => (item=bgp-l3-xl.yaml)\nok: [localhost] => (item=bgp_dt01.yaml)\nok: [localhost] => (item=bgp_dt04_ipv6.yaml)\nok: [localhost] => (item=bmo01.yaml)\nok: [localhost] => (item=dcn.yaml)\nok: [localhost] => (item=dt-sharded.yaml)\nok: [localhost] => (item=dz-storage.yaml)\nok: [localhost] => (item=hci-adoption.yaml)\nok: [localhost] => (item=hci-ironic.yaml)\nok: [localhost] => (item=hci.yaml)\nok: [localhost] => (item=multi-namespace-skmo.yaml)\nok: [localhost] => (item=multi-namespace.yaml)\nok: [localhost] => (item=nfv-ovs-dpdk-sriov-adoption.yaml)\nok: [localhost] => (item=nfv-ovs-dpdk-sriov-hci.yaml)\nok: [localhost] => (item=nova-three-cells.yaml)\nok: [localhost] => (item=nova01alpha.yaml)\nok: [localhost] => (item=nova02beta.yaml)\nok: [localhost] => (item=nova03gamma.yaml)\nok: [localhost] => (item=nova04delta-adoption.yaml)\nok: [localhost] => (item=nova04delta.yaml)\nok: [localhost] => (item=nova05epsilon.yaml)\nok: [localhost] => (item=nvidia-mdev.yaml)\nok: [localhost] => (item=nvidia-vfio-passthrough-adoption.yaml)\nok: [localhost] => (item=nvidia-vfio-passthrough.yaml)\nok: [localhost] => (item=osasinfra-ipv6.yaml)\nok: [localhost] => (item=osasinfra.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-2nodesets.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-ipv6-2nodesets.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-ipv6.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov-networker.yaml)\nok: [localhost] => (item=ovs-dpdk-sriov.yaml)\nok: [localhost] => (item=ovs-dpdk.yaml)\nok: [localhost] => (item=pidone.yaml)\nok: [localhost] => (item=sriov.yaml)\nok: [localhost] => (item=uni01alpha-adoption.yaml)\nok: [localhost] => (item=uni01alpha.yaml)\nok: [localhost] => (item=uni02beta-adoption.yaml)\nok: [localhost] => (item=uni02beta.yaml)\nok: [localhost] => (item=uni04delta-adoption.yaml)\nok: [localhost] => (item=uni04delta-ipv6-adoption.yaml)\nok: [localhost] => (item=uni04delta-ipv6.yaml)\nok: [localhost] => (item=uni04delta.yaml)\nok: [localhost] => (item=uni05epsilon-adoption.yaml)\nok: [localhost] => (item=uni05epsilon.yaml)\nok: [localhost] => (item=uni06zeta-adoption.yaml)\nok: [localhost] => (item=uni06zeta.yaml)\nok: [localhost] => (item=uni07eta-adoption.yaml)\nok: [localhost] => (item=uni07eta.yaml)\nok: [localhost] => (item=uni09iota-adoption.yaml)\nok: [localhost] => (item=uni09iota.yaml)\nok: [localhost] => (item=vhosts-compact.yaml)\n\nTASK [Prepare automation data cifmw_deploy_architecture_steps={{ vas['vas'][cifmw_architecture_scenario] }}] ***\nTuesday 09 June 2026  13:05:26 +0000 (0:00:01.956)       0:00:24.482 ********** \nTuesday 09 June 2026  13:05:26 +0000 (0:00:01.956)       0:00:24.480 ********** \nok: [localhost]\n\nTASK [Create needed SSH keypairs comment={{ item.comment }}, path={{ item.path }}, type=ecdsa, size=521] ***\nTuesday 09 June 2026  13:05:26 +0000 (0:00:00.051)       0:00:24.533 ********** \nTuesday 09 June 2026  13:05:26 +0000 (0:00:00.051)       0:00:24.532 ********** \nchanged: [localhost] => (item={'comment': 'Nova migration', 'path': '/home/zuul/ci-framework-data/artifacts/ecdsa_nova_migration'})\nchanged: [localhost] => (item={'comment': 'EDPM deploy key', 'path': '/home/zuul/ci-framework-data/artifacts/ecdsa_deploy'})\n\nTASK [Load public SSH keys path={{ item }}] ************************************\nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.687)       0:00:25.221 ********** \nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.687)       0:00:25.219 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_nova_migration.pub)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_deploy.pub)\n\nTASK [Load private SSH keys path={{ item }}] ***********************************\nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.427)       0:00:25.648 ********** \nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.427)       0:00:25.646 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_nova_migration)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_deploy)\n\nTASK [Generate needed facts out of local files cifmw_ci_gen_kustomize_values_ssh_authorizedkeys={{\n  _pub_keys.results[1].content | b64decode\n}}, cifmw_ci_gen_kustomize_values_ssh_private_key={{\n  _priv_keys.results[1].content | b64decode\n}}, cifmw_ci_gen_kustomize_values_ssh_public_key={{\n  _pub_keys.results[1].content | b64decode\n}}, cifmw_ci_gen_kustomize_values_migration_pub_key={{\n  _pub_keys.results[0].content | b64decode\n}}, cifmw_ci_gen_kustomize_values_migration_priv_key={{\n  _priv_keys.results[0].content | b64decode\n}}, cifmw_ci_gen_kustomize_values_sshd_ranges={{\n  [\n    cifmw_networking_env_definition.networks.ctlplane.network_v4 | default (none),\n    cifmw_networking_env_definition.networks.ctlplane.network_v6 | default (none)\n  ] | select()\n}}] ***\nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.392)       0:00:26.040 ********** \nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.392)       0:00:26.039 ********** \nok: [localhost]\n\nTASK [Execute deployment steps name=kustomize_deploy, tasks_from=execute_step.yml, apply={'tags': ['edpm_deploy']}] ***\nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.053)       0:00:26.094 ********** \nTuesday 09 June 2026  13:05:27 +0000 (0:00:00.053)       0:00:26.093 ********** \n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.218)       0:00:26.312 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.218)       0:00:26.311 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.068)       0:00:26.380 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.067)       0:00:26.379 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.034)       0:00:26.415 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.034)       0:00:26.413 ********** \nok: [localhost] => (item=oc -n openstack wait nncp -l osp/nncm-config-type=standard --for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured --timeout=5m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.448 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.447 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.024)       0:00:26.472 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.024)       0:00:26.471 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.506 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.505 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.046)       0:00:26.553 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.046)       0:00:26.552 ********** \nok: [localhost] => (item={'name': 'network-values', 'src_file': 'values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.260)       0:00:26.814 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.260)       0:00:26.812 ********** \nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci/control-plane/networking/nncp name=run_hook] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.094)       0:00:26.909 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.095)       0:00:26.908 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci/control-plane/networking/nncp name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.058)       0:00:26.967 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.058)       0:00:26.966 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.116)       0:00:27.084 ********** \nTuesday 09 June 2026  13:05:28 +0000 (0:00:00.116)       0:00:27.083 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.052)       0:00:27.137 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.052)       0:00:27.135 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.077)       0:00:27.214 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.077)       0:00:27.213 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.273 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.271 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.223)       0:00:27.496 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.223)       0:00:27.494 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.554 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.553 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.238)       0:00:27.792 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.238)       0:00:27.791 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.296)       0:00:28.089 ********** \nTuesday 09 June 2026  13:05:29 +0000 (0:00:00.296)       0:00:28.088 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/network_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Assert we have needed parameters that=['cifmw_networking_env_definition is defined']] ***\nTuesday 09 June 2026  13:05:30 +0000 (0:00:00.087)       0:00:28.177 ********** \nTuesday 09 June 2026  13:05:30 +0000 (0:00:00.087)       0:00:28.175 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:30 +0000 (0:00:00.077)       0:00:28.254 ********** \nTuesday 09 June 2026  13:05:30 +0000 (0:00:00.077)       0:00:28.253 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:05:30 +0000 (0:00:00.176)       0:00:28.431 ********** \nTuesday 09 June 2026  13:05:30 +0000 (0:00:00.176)       0:00:28.430 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.682)       0:00:29.114 ********** \nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.682)       0:00:29.113 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.059)       0:00:29.173 ********** \nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.059)       0:00:29.172 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.430)       0:00:29.604 ********** \nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.430)       0:00:29.603 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.411)       0:00:30.015 ********** \nTuesday 09 June 2026  13:05:31 +0000 (0:00:00.411)       0:00:30.014 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.479)       0:00:30.494 ********** \nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.479)       0:00:30.493 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.118)       0:00:30.613 ********** \nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.118)       0:00:30.611 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.082)       0:00:30.695 ********** \nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.082)       0:00:30.694 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.244)       0:00:30.939 ********** \nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.244)       0:00:30.938 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.085)       0:00:31.025 ********** \nTuesday 09 June 2026  13:05:32 +0000 (0:00:00.085)       0:00:31.024 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:05:33 +0000 (0:00:00.662)       0:00:31.687 ********** \nTuesday 09 June 2026  13:05:33 +0000 (0:00:00.662)       0:00:31.686 ********** \nok: [localhost] => (item=02_ci_data.yaml)\nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:33 +0000 (0:00:00.130)       0:00:31.818 ********** \nTuesday 09 June 2026  13:05:33 +0000 (0:00:00.130)       0:00:31.816 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:33 +0000 (0:00:00.245)       0:00:32.063 ********** \nTuesday 09 June 2026  13:05:33 +0000 (0:00:00.245)       0:00:32.062 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci/control-plane/networking/nncp mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:05:34 +0000 (0:00:00.478)       0:00:32.541 ********** \nTuesday 09 June 2026  13:05:34 +0000 (0:00:00.478)       0:00:32.540 ********** \nchanged: [localhost] => (item=network-values)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:34 +0000 (0:00:00.340)       0:00:32.881 ********** \nTuesday 09 June 2026  13:05:34 +0000 (0:00:00.340)       0:00:32.880 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci/control-plane/networking/nncp chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:05:34 +0000 (0:00:00.060)       0:00:32.942 ********** \nTuesday 09 June 2026  13:05:34 +0000 (0:00:00.060)       0:00:32.941 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.493)       0:00:33.435 ********** \nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.493)       0:00:33.434 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/control-plane/networking/nncp executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.475)       0:00:33.910 ********** \nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.474)       0:00:33.909 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.060)       0:00:33.971 ********** \nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.060)       0:00:33.969 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/control-plane/networking/nncp remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.047)       0:00:34.018 ********** \nTuesday 09 June 2026  13:05:35 +0000 (0:00:00.047)       0:00:34.017 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.323)       0:00:34.341 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.323)       0:00:34.340 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci/control-plane/networking/nncp _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.050)       0:00:34.392 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.050)       0:00:34.390 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/control-plane/networking/nncp _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.448 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.446 ********** \nskipping: [localhost] => (item=oc -n openstack wait nncp -l osp/nncm-config-type=standard --for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured --timeout=5m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.503 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.502 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci/control-plane/networking/nncp name=run_hook] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.044)       0:00:34.548 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.044)       0:00:34.547 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.051)       0:00:34.599 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.050)       0:00:34.598 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.073)       0:00:34.672 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.073)       0:00:34.671 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.035)       0:00:34.707 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.035)       0:00:34.706 ********** \nok: [localhost] => (item=oc -n metallb-system wait pod -l app=metallb -l component=speaker --for condition=Ready --timeout=5m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.040)       0:00:34.748 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.040)       0:00:34.747 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.027)       0:00:34.775 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.027)       0:00:34.774 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.037)       0:00:34.813 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.037)       0:00:34.811 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.054)       0:00:34.867 ********** \nTuesday 09 June 2026  13:05:36 +0000 (0:00:00.054)       0:00:34.866 ********** \nok: [localhost] => (item={'name': 'network-values', 'src_file': 'nncp/values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.269)       0:00:35.136 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.269)       0:00:35.135 ********** \nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci/control-plane/networking name=run_hook] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.089)       0:00:35.226 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.089)       0:00:35.225 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci/control-plane/networking name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.040)       0:00:35.266 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.040)       0:00:35.265 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.092)       0:00:35.359 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.092)       0:00:35.357 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.038)       0:00:35.397 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.038)       0:00:35.396 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.081)       0:00:35.479 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.081)       0:00:35.477 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.044)       0:00:35.523 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.044)       0:00:35.522 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.226)       0:00:35.750 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.226)       0:00:35.749 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.054)       0:00:35.805 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.054)       0:00:35.804 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.218)       0:00:36.024 ********** \nTuesday 09 June 2026  13:05:37 +0000 (0:00:00.218)       0:00:36.022 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.238)       0:00:36.262 ********** \nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.238)       0:00:36.261 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/network_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Assert we have needed parameters that=['cifmw_networking_env_definition is defined']] ***\nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.094)       0:00:36.357 ********** \nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.094)       0:00:36.355 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.044)       0:00:36.402 ********** \nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.044)       0:00:36.400 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.254)       0:00:36.657 ********** \nTuesday 09 June 2026  13:05:38 +0000 (0:00:00.255)       0:00:36.655 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:05:39 +0000 (0:00:00.562)       0:00:37.219 ********** \nTuesday 09 June 2026  13:05:39 +0000 (0:00:00.562)       0:00:37.218 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:39 +0000 (0:00:00.060)       0:00:37.279 ********** \nTuesday 09 June 2026  13:05:39 +0000 (0:00:00.060)       0:00:37.278 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:39 +0000 (0:00:00.367)       0:00:37.647 ********** \nTuesday 09 June 2026  13:05:39 +0000 (0:00:00.367)       0:00:37.646 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.485)       0:00:38.133 ********** \nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.486)       0:00:38.132 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.494)       0:00:38.628 ********** \nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.494)       0:00:38.627 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.116)       0:00:38.744 ********** \nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.116)       0:00:38.743 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.075)       0:00:38.820 ********** \nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.075)       0:00:38.818 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.246)       0:00:39.066 ********** \nTuesday 09 June 2026  13:05:40 +0000 (0:00:00.246)       0:00:39.065 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.076)       0:00:39.143 ********** \nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.076)       0:00:39.142 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.564)       0:00:39.708 ********** \nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.564)       0:00:39.706 ********** \nok: [localhost] => (item=02_ci_data.yaml)\nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.149)       0:00:39.857 ********** \nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.149)       0:00:39.856 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.213)       0:00:40.071 ********** \nTuesday 09 June 2026  13:05:41 +0000 (0:00:00.213)       0:00:40.070 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci/control-plane/networking mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:05:42 +0000 (0:00:00.404)       0:00:40.476 ********** \nTuesday 09 June 2026  13:05:42 +0000 (0:00:00.404)       0:00:40.474 ********** \nok: [localhost] => (item=network-values)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:42 +0000 (0:00:00.230)       0:00:40.706 ********** \nTuesday 09 June 2026  13:05:42 +0000 (0:00:00.230)       0:00:40.705 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci/control-plane/networking chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:05:42 +0000 (0:00:00.046)       0:00:40.752 ********** \nTuesday 09 June 2026  13:05:42 +0000 (0:00:00.046)       0:00:40.751 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.385)       0:00:41.138 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.385)       0:00:41.136 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/control-plane/networking executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.400)       0:00:41.538 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.400)       0:00:41.537 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.052)       0:00:41.591 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.052)       0:00:41.589 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/control-plane/networking remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.064)       0:00:41.655 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.064)       0:00:41.654 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.231)       0:00:41.886 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.231)       0:00:41.885 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci/control-plane/networking _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.045)       0:00:41.932 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.045)       0:00:41.930 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/control-plane/networking _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.048)       0:00:41.980 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.048)       0:00:41.979 ********** \nskipping: [localhost] => (item=oc -n metallb-system wait pod -l app=metallb -l component=speaker --for condition=Ready --timeout=5m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.055)       0:00:42.036 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.055)       0:00:42.034 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci/control-plane/networking name=run_hook] ***\nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.039)       0:00:42.075 ********** \nTuesday 09 June 2026  13:05:43 +0000 (0:00:00.039)       0:00:42.074 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.042)       0:00:42.118 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.042)       0:00:42.116 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.037)       0:00:42.155 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.037)       0:00:42.153 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.036)       0:00:42.192 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.036)       0:00:42.190 ********** \nok: [localhost] => (item=oc -n openstack wait osctlplane controlplane --for condition=Ready --timeout=60m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.034)       0:00:42.226 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.034)       0:00:42.225 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.023)       0:00:42.250 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.023)       0:00:42.249 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.032)       0:00:42.283 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.032)       0:00:42.281 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.053)       0:00:42.336 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.053)       0:00:42.335 ********** \nok: [localhost] => (item={'name': 'service-values', 'src_file': 'service-values.yaml'})\nok: [localhost] => (item={'name': 'network-values', 'src_file': 'networking/nncp/values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.435)       0:00:42.771 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.435)       0:00:42.770 ********** \nok: [localhost] => (item=service-values.yaml)\nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci/control-plane name=run_hook] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.153)       0:00:42.925 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.153)       0:00:42.923 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci/control-plane name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.052)       0:00:42.977 ********** \nTuesday 09 June 2026  13:05:44 +0000 (0:00:00.052)       0:00:42.976 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.150)       0:00:43.128 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.150)       0:00:43.127 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.064)       0:00:43.192 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.064)       0:00:43.191 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.076)       0:00:43.269 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.076)       0:00:43.268 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.048)       0:00:43.318 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.048)       0:00:43.316 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.216)       0:00:43.534 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.216)       0:00:43.533 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.056)       0:00:43.591 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.056)       0:00:43.590 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.201)       0:00:43.793 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.201)       0:00:43.792 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.202)       0:00:43.995 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.202)       0:00:43.994 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.049)       0:00:44.045 ********** \nTuesday 09 June 2026  13:05:45 +0000 (0:00:00.049)       0:00:44.043 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.184)       0:00:44.229 ********** \nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.184)       0:00:44.228 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.083)       0:00:44.313 ********** \nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.083)       0:00:44.311 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.063)       0:00:44.377 ********** \nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.063)       0:00:44.375 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.387)       0:00:44.764 ********** \nTuesday 09 June 2026  13:05:46 +0000 (0:00:00.387)       0:00:44.762 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.439)       0:00:45.203 ********** \nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.439)       0:00:45.202 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.473)       0:00:45.677 ********** \nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.473)       0:00:45.675 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.098)       0:00:45.775 ********** \nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.098)       0:00:45.774 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.049)       0:00:45.825 ********** \nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.049)       0:00:45.824 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.232)       0:00:46.057 ********** \nTuesday 09 June 2026  13:05:47 +0000 (0:00:00.232)       0:00:46.056 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.068)       0:00:46.126 ********** \nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.068)       0:00:46.124 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.392)       0:00:46.518 ********** \nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.392)       0:00:46.517 ********** \nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.130)       0:00:46.648 ********** \nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.130)       0:00:46.647 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.238)       0:00:46.887 ********** \nTuesday 09 June 2026  13:05:48 +0000 (0:00:00.238)       0:00:46.886 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.486)       0:00:47.374 ********** \nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.487)       0:00:47.373 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.071)       0:00:47.445 ********** \nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.071)       0:00:47.444 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.101)       0:00:47.547 ********** \nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.101)       0:00:47.546 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.069)       0:00:47.617 ********** \nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.069)       0:00:47.615 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.252)       0:00:47.869 ********** \nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.252)       0:00:47.868 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.087)       0:00:47.957 ********** \nTuesday 09 June 2026  13:05:49 +0000 (0:00:00.087)       0:00:47.955 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.252)       0:00:48.209 ********** \nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.252)       0:00:48.208 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.276)       0:00:48.486 ********** \nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.276)       0:00:48.485 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/network_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Assert we have needed parameters that=['cifmw_networking_env_definition is defined']] ***\nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.055)       0:00:48.542 ********** \nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.055)       0:00:48.540 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.060)       0:00:48.603 ********** \nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.060)       0:00:48.601 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.253)       0:00:48.856 ********** \nTuesday 09 June 2026  13:05:50 +0000 (0:00:00.253)       0:00:48.855 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:05:51 +0000 (0:00:00.547)       0:00:49.404 ********** \nTuesday 09 June 2026  13:05:51 +0000 (0:00:00.547)       0:00:49.403 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:51 +0000 (0:00:00.054)       0:00:49.459 ********** \nTuesday 09 June 2026  13:05:51 +0000 (0:00:00.054)       0:00:49.457 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:51 +0000 (0:00:00.429)       0:00:49.889 ********** \nTuesday 09 June 2026  13:05:51 +0000 (0:00:00.429)       0:00:49.887 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.430)       0:00:50.320 ********** \nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.430)       0:00:50.318 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.489)       0:00:50.809 ********** \nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.489)       0:00:50.808 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.135)       0:00:50.945 ********** \nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.135)       0:00:50.944 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.048)       0:00:50.994 ********** \nTuesday 09 June 2026  13:05:52 +0000 (0:00:00.048)       0:00:50.993 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.272)       0:00:51.266 ********** \nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.272)       0:00:51.265 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.037)       0:00:51.304 ********** \nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.037)       0:00:51.302 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.606)       0:00:51.910 ********** \nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.606)       0:00:51.909 ********** \nok: [localhost] => (item=02_ci_data.yaml)\nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.120)       0:00:52.031 ********** \nTuesday 09 June 2026  13:05:53 +0000 (0:00:00.120)       0:00:52.029 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:54 +0000 (0:00:00.254)       0:00:52.286 ********** \nTuesday 09 June 2026  13:05:54 +0000 (0:00:00.254)       0:00:52.284 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci/control-plane mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:05:54 +0000 (0:00:00.454)       0:00:52.740 ********** \nTuesday 09 June 2026  13:05:54 +0000 (0:00:00.454)       0:00:52.739 ********** \nchanged: [localhost] => (item=service-values)\nok: [localhost] => (item=network-values)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:55 +0000 (0:00:00.612)       0:00:53.352 ********** \nTuesday 09 June 2026  13:05:55 +0000 (0:00:00.612)       0:00:53.351 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci/control-plane chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:05:55 +0000 (0:00:00.079)       0:00:53.432 ********** \nTuesday 09 June 2026  13:05:55 +0000 (0:00:00.079)       0:00:53.431 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:05:55 +0000 (0:00:00.444)       0:00:53.877 ********** \nTuesday 09 June 2026  13:05:55 +0000 (0:00:00.444)       0:00:53.875 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/control-plane executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.515)       0:00:54.392 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.515)       0:00:54.391 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.071)       0:00:54.463 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.071)       0:00:54.462 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/control-plane remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.086)       0:00:54.550 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.086)       0:00:54.549 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.282)       0:00:54.833 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.282)       0:00:54.832 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci/control-plane _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.037)       0:00:54.871 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.037)       0:00:54.869 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/control-plane _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.048)       0:00:54.919 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.048)       0:00:54.918 ********** \nskipping: [localhost] => (item=oc -n openstack wait osctlplane controlplane --for condition=Ready --timeout=60m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.056)       0:00:54.976 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.056)       0:00:54.974 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci/control-plane name=run_hook] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.050)       0:00:55.027 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.050)       0:00:55.025 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.063)       0:00:55.090 ********** \nTuesday 09 June 2026  13:05:56 +0000 (0:00:00.063)       0:00:55.089 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.051)       0:00:55.142 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.051)       0:00:55.140 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.188 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.187 ********** \nok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.047)       0:00:55.236 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.047)       0:00:55.234 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.034)       0:00:55.270 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.034)       0:00:55.269 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.317 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.315 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.374 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.373 ********** \nok: [localhost] => (item={'name': 'edpm-nodeset-values', 'src_file': 'values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.249)       0:00:55.624 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.249)       0:00:55.622 ********** \nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci/edpm-pre-ceph/nodeset name=run_hook] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.080)       0:00:55.704 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.080)       0:00:55.703 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci/edpm-pre-ceph/nodeset name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.762 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.761 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.124)       0:00:55.887 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.124)       0:00:55.885 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.040)       0:00:55.927 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.040)       0:00:55.926 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.059)       0:00:55.987 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.059)       0:00:55.986 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.053)       0:00:56.040 ********** \nTuesday 09 June 2026  13:05:57 +0000 (0:00:00.053)       0:00:56.039 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.187)       0:00:56.228 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.187)       0:00:56.227 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.047)       0:00:56.275 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.047)       0:00:56.274 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.236)       0:00:56.512 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.236)       0:00:56.511 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.288)       0:00:56.800 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.288)       0:00:56.799 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/edpm_nodeset_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Check if all required variables for accessing the node is provided. _raw_params=edpm_core_asserts.yml] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.054)       0:00:56.855 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.054)       0:00:56.853 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/edpm_core_asserts.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure the required parameters are defined and configured. that=['cifmw_networking_env_definition is defined', 'cifmw_ci_gen_kustomize_values_ssh_authorizedkeys is defined', \"cifmw_ci_gen_kustomize_values_ssh_authorizedkeys != ''\", 'cifmw_ci_gen_kustomize_values_ssh_private_key is defined', \"cifmw_ci_gen_kustomize_values_ssh_private_key != ''\", 'cifmw_ci_gen_kustomize_values_ssh_public_key is defined', \"cifmw_ci_gen_kustomize_values_ssh_public_key != ''\"]] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.053)       0:00:56.908 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.053)       0:00:56.907 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Get common data for dataplane templating _raw_params=edpm_core_facts.yml] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.055)       0:00:56.963 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.055)       0:00:56.962 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/edpm_core_facts.yml for localhost\n\nTASK [ci_gen_kustomize_values : Fetch the already deployed services for further usage _raw_params=oc get osdps --namespace openstack --no-headers -o custom-columns=\":metadata.name\"] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.073)       0:00:57.037 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.073)       0:00:57.036 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose the deployed services as a fact ci_gen_kustomize_edpm_nodeset_predeployed_services={{\n  _ci_gen_kustomize_deployed_services_stdout.stdout_lines | default ([])\n}}] ***\nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.050)       0:00:57.088 ********** \nTuesday 09 June 2026  13:05:58 +0000 (0:00:00.050)       0:00:57.087 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Check if required variables for nova migration are provided. that=['cifmw_ci_gen_kustomize_values_migration_priv_key is defined', \"cifmw_ci_gen_kustomize_values_migration_priv_key != ''\", 'cifmw_ci_gen_kustomize_values_migration_pub_key is defined', \"cifmw_ci_gen_kustomize_values_migration_pub_key != ''\"]] ***\nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.101)       0:00:57.190 ********** \nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.101)       0:00:57.189 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.045)       0:00:57.235 ********** \nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.045)       0:00:57.234 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.208)       0:00:57.443 ********** \nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.208)       0:00:57.442 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.552)       0:00:57.996 ********** \nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.552)       0:00:57.994 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.060)       0:00:58.057 ********** \nTuesday 09 June 2026  13:05:59 +0000 (0:00:00.060)       0:00:58.055 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:00 +0000 (0:00:00.493)       0:00:58.550 ********** \nTuesday 09 June 2026  13:06:00 +0000 (0:00:00.493)       0:00:58.549 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:00 +0000 (0:00:00.465)       0:00:59.015 ********** \nTuesday 09 June 2026  13:06:00 +0000 (0:00:00.465)       0:00:59.014 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.440)       0:00:59.456 ********** \nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.440)       0:00:59.454 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.079)       0:00:59.535 ********** \nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.079)       0:00:59.534 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.066)       0:00:59.602 ********** \nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.066)       0:00:59.601 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.212)       0:00:59.815 ********** \nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.212)       0:00:59.813 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.070)       0:00:59.885 ********** \nTuesday 09 June 2026  13:06:01 +0000 (0:00:00.070)       0:00:59.884 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/02_ci_data.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:06:02 +0000 (0:00:00.757)       0:01:00.643 ********** \nTuesday 09 June 2026  13:06:02 +0000 (0:00:00.758)       0:01:00.642 ********** \nok: [localhost] => (item=02_ci_data.yaml)\nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:02 +0000 (0:00:00.146)       0:01:00.790 ********** \nTuesday 09 June 2026  13:06:02 +0000 (0:00:00.146)       0:01:00.789 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:02 +0000 (0:00:00.237)       0:01:01.027 ********** \nTuesday 09 June 2026  13:06:02 +0000 (0:00:00.237)       0:01:01.026 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci/edpm-pre-ceph/nodeset mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:06:03 +0000 (0:00:00.443)       0:01:01.471 ********** \nTuesday 09 June 2026  13:06:03 +0000 (0:00:00.443)       0:01:01.470 ********** \nchanged: [localhost] => (item=edpm-nodeset-values)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:03 +0000 (0:00:00.320)       0:01:01.791 ********** \nTuesday 09 June 2026  13:06:03 +0000 (0:00:00.320)       0:01:01.790 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci/edpm-pre-ceph/nodeset chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:06:03 +0000 (0:00:00.042)       0:01:01.834 ********** \nTuesday 09 June 2026  13:06:03 +0000 (0:00:00.042)       0:01:01.833 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.353)       0:01:02.188 ********** \nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.353)       0:01:02.186 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/edpm-pre-ceph/nodeset executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.486)       0:01:02.675 ********** \nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.486)       0:01:02.673 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.041)       0:01:02.716 ********** \nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.041)       0:01:02.715 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/edpm-pre-ceph/nodeset remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.049)       0:01:02.765 ********** \nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.049)       0:01:02.764 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.289)       0:01:03.055 ********** \nTuesday 09 June 2026  13:06:04 +0000 (0:00:00.290)       0:01:03.054 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci/edpm-pre-ceph/nodeset _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.072)       0:01:03.127 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.072)       0:01:03.126 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/edpm-pre-ceph/nodeset _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.062)       0:01:03.190 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.062)       0:01:03.188 ********** \nskipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:03.250 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:03.248 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci/edpm-pre-ceph/nodeset name=run_hook] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.058)       0:01:03.308 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.058)       0:01:03.307 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.067)       0:01:03.376 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.067)       0:01:03.375 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.063)       0:01:03.440 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.063)       0:01:03.439 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.037)       0:01:03.478 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.037)       0:01:03.477 ********** \nok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=30m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.052)       0:01:03.530 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.052)       0:01:03.529 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.039)       0:01:03.570 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.039)       0:01:03.569 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.045)       0:01:03.615 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.045)       0:01:03.614 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.056)       0:01:03.672 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.056)       0:01:03.670 ********** \nok: [localhost] => (item={'name': 'edpm-deployment-values', 'src_file': 'values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.293)       0:01:03.965 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.293)       0:01:03.964 ********** \nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci/edpm-pre-ceph/deployment name=run_hook] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.081)       0:01:04.047 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.081)       0:01:04.046 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci/edpm-pre-ceph/deployment name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:04.108 ********** \nTuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:04.106 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.108)       0:01:04.216 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.108)       0:01:04.215 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.043)       0:01:04.260 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.043)       0:01:04.259 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.064)       0:01:04.325 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.064)       0:01:04.323 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.067)       0:01:04.392 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.067)       0:01:04.391 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.249)       0:01:04.642 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.249)       0:01:04.641 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.088)       0:01:04.730 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.088)       0:01:04.729 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.251)       0:01:04.982 ********** \nTuesday 09 June 2026  13:06:06 +0000 (0:00:00.251)       0:01:04.981 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.268)       0:01:05.251 ********** \nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.268)       0:01:05.249 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.048)       0:01:05.299 ********** \nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.048)       0:01:05.298 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.286)       0:01:05.586 ********** \nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.286)       0:01:05.584 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.079)       0:01:05.665 ********** \nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.079)       0:01:05.664 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.067)       0:01:05.733 ********** \nTuesday 09 June 2026  13:06:07 +0000 (0:00:00.067)       0:01:05.732 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.393)       0:01:06.126 ********** \nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.393)       0:01:06.125 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.449)       0:01:06.576 ********** \nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.449)       0:01:06.574 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.435)       0:01:07.011 ********** \nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.435)       0:01:07.010 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.094)       0:01:07.106 ********** \nTuesday 09 June 2026  13:06:08 +0000 (0:00:00.094)       0:01:07.105 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.051)       0:01:07.158 ********** \nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.051)       0:01:07.157 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.209)       0:01:07.367 ********** \nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.209)       0:01:07.366 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.050)       0:01:07.418 ********** \nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.050)       0:01:07.417 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.358)       0:01:07.777 ********** \nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.358)       0:01:07.775 ********** \nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.083)       0:01:07.860 ********** \nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.083)       0:01:07.858 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.217)       0:01:08.077 ********** \nTuesday 09 June 2026  13:06:09 +0000 (0:00:00.217)       0:01:08.075 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci/edpm-pre-ceph/deployment mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:06:10 +0000 (0:00:00.450)       0:01:08.527 ********** \nTuesday 09 June 2026  13:06:10 +0000 (0:00:00.450)       0:01:08.525 ********** \nchanged: [localhost] => (item=edpm-deployment-values)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:10 +0000 (0:00:00.260)       0:01:08.787 ********** \nTuesday 09 June 2026  13:06:10 +0000 (0:00:00.260)       0:01:08.786 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci/edpm-pre-ceph/deployment chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:06:10 +0000 (0:00:00.044)       0:01:08.832 ********** \nTuesday 09 June 2026  13:06:10 +0000 (0:00:00.044)       0:01:08.830 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.362)       0:01:09.194 ********** \nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.362)       0:01:09.193 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/edpm-pre-ceph/deployment executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.543)       0:01:09.738 ********** \nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.543)       0:01:09.737 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.047)       0:01:09.786 ********** \nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.047)       0:01:09.785 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/edpm-pre-ceph/deployment remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.068)       0:01:09.854 ********** \nTuesday 09 June 2026  13:06:11 +0000 (0:00:00.068)       0:01:09.853 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.301)       0:01:10.156 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.301)       0:01:10.155 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci/edpm-pre-ceph/deployment _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.074)       0:01:10.231 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.074)       0:01:10.230 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/edpm-pre-ceph/deployment _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.048)       0:01:10.280 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.048)       0:01:10.278 ********** \nskipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=30m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.073)       0:01:10.353 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.073)       0:01:10.352 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci/edpm-pre-ceph/deployment name=run_hook] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.060)       0:01:10.414 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.060)       0:01:10.412 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.053)       0:01:10.467 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.053)       0:01:10.465 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.046)       0:01:10.514 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.046)       0:01:10.512 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.553 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.552 ********** \nok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.592 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.591 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.036)       0:01:10.629 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.036)       0:01:10.627 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.037)       0:01:10.666 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.037)       0:01:10.664 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.069)       0:01:10.735 ********** \nTuesday 09 June 2026  13:06:12 +0000 (0:00:00.069)       0:01:10.734 ********** \nok: [localhost] => (item={'name': 'service-values', 'src_file': 'service-values.yaml'})\nok: [localhost] => (item={'name': 'edpm-nodeset-values-post-ceph', 'src_file': 'values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.521)       0:01:11.257 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.521)       0:01:11.255 ********** \nok: [localhost] => (item=service-values.yaml)\nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci name=run_hook] *************\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.096)       0:01:11.354 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.096)       0:01:11.352 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.067)       0:01:11.421 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.067)       0:01:11.419 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.143)       0:01:11.564 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.143)       0:01:11.563 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.048)       0:01:11.613 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.048)       0:01:11.611 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.066)       0:01:11.679 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.066)       0:01:11.678 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.059)       0:01:11.739 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.059)       0:01:11.737 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.254)       0:01:11.993 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.254)       0:01:11.992 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.053)       0:01:12.046 ********** \nTuesday 09 June 2026  13:06:13 +0000 (0:00:00.053)       0:01:12.045 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.242)       0:01:12.289 ********** \nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.242)       0:01:12.287 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.241)       0:01:12.531 ********** \nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.241)       0:01:12.529 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.049)       0:01:12.581 ********** \nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.049)       0:01:12.579 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.183)       0:01:12.764 ********** \nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.183)       0:01:12.763 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.095)       0:01:12.860 ********** \nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.095)       0:01:12.859 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.070)       0:01:12.930 ********** \nTuesday 09 June 2026  13:06:14 +0000 (0:00:00.070)       0:01:12.929 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:15 +0000 (0:00:00.518)       0:01:13.449 ********** \nTuesday 09 June 2026  13:06:15 +0000 (0:00:00.518)       0:01:13.447 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:15 +0000 (0:00:00.409)       0:01:13.858 ********** \nTuesday 09 June 2026  13:06:15 +0000 (0:00:00.409)       0:01:13.857 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.396)       0:01:14.255 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.396)       0:01:14.253 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.059)       0:01:14.315 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.059)       0:01:14.313 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.040)       0:01:14.355 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.040)       0:01:14.354 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.187)       0:01:14.542 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.187)       0:01:14.541 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.048)       0:01:14.591 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.048)       0:01:14.589 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.342)       0:01:14.933 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.342)       0:01:14.932 ********** \nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.095)       0:01:15.029 ********** \nTuesday 09 June 2026  13:06:16 +0000 (0:00:00.095)       0:01:15.027 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:17 +0000 (0:00:00.313)       0:01:15.342 ********** \nTuesday 09 June 2026  13:06:17 +0000 (0:00:00.313)       0:01:15.340 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.820)       0:01:16.162 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.820)       0:01:16.161 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.050)       0:01:16.213 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.050)       0:01:16.212 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.078)       0:01:16.291 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.078)       0:01:16.290 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.046)       0:01:16.337 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.046)       0:01:16.336 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.208)       0:01:16.546 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.208)       0:01:16.545 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.054)       0:01:16.601 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.054)       0:01:16.600 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.278)       0:01:16.879 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.278)       0:01:16.878 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.190)       0:01:17.070 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.190)       0:01:17.069 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.039)       0:01:17.110 ********** \nTuesday 09 June 2026  13:06:18 +0000 (0:00:00.039)       0:01:17.108 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.196)       0:01:17.306 ********** \nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.196)       0:01:17.305 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.054)       0:01:17.360 ********** \nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.054)       0:01:17.359 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.051)       0:01:17.412 ********** \nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.051)       0:01:17.410 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.624)       0:01:18.036 ********** \nTuesday 09 June 2026  13:06:19 +0000 (0:00:00.624)       0:01:18.035 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.386)       0:01:18.422 ********** \nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.386)       0:01:18.421 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.374)       0:01:18.797 ********** \nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.374)       0:01:18.795 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.068)       0:01:18.865 ********** \nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.068)       0:01:18.864 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.038)       0:01:18.904 ********** \nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.038)       0:01:18.903 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.185)       0:01:19.089 ********** \nTuesday 09 June 2026  13:06:20 +0000 (0:00:00.185)       0:01:19.088 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.046)       0:01:19.136 ********** \nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.046)       0:01:19.135 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.353)       0:01:19.490 ********** \nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.353)       0:01:19.489 ********** \nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.098)       0:01:19.589 ********** \nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.098)       0:01:19.587 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.237)       0:01:19.826 ********** \nTuesday 09 June 2026  13:06:21 +0000 (0:00:00.237)       0:01:19.825 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:06:22 +0000 (0:00:00.386)       0:01:20.212 ********** \nTuesday 09 June 2026  13:06:22 +0000 (0:00:00.386)       0:01:20.211 ********** \nchanged: [localhost] => (item=service-values)\nchanged: [localhost] => (item=edpm-nodeset-values-post-ceph)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:22 +0000 (0:00:00.446)       0:01:20.659 ********** \nTuesday 09 June 2026  13:06:22 +0000 (0:00:00.446)       0:01:20.658 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:06:22 +0000 (0:00:00.073)       0:01:20.733 ********** \nTuesday 09 June 2026  13:06:22 +0000 (0:00:00.073)       0:01:20.732 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:06:23 +0000 (0:00:01.024)       0:01:21.758 ********** \nTuesday 09 June 2026  13:06:23 +0000 (0:00:01.024)       0:01:21.757 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.372)       0:01:22.130 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.372)       0:01:22.129 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.060)       0:01:22.191 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.060)       0:01:22.190 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.234 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.233 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.215)       0:01:22.450 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.215)       0:01:22.449 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.040)       0:01:22.491 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.040)       0:01:22.489 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.044)       0:01:22.535 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.044)       0:01:22.533 ********** \nskipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.045)       0:01:22.580 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.045)       0:01:22.579 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci name=run_hook] ************\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.042)       0:01:22.623 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.042)       0:01:22.621 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.050)       0:01:22.673 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.050)       0:01:22.672 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.717 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.716 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.025)       0:01:22.743 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.025)       0:01:22.742 ********** \nok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=80m)\n\nTASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.034)       0:01:22.777 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.034)       0:01:22.776 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.028)       0:01:22.806 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.028)       0:01:22.804 ********** \nok: [localhost]\n\nTASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{\n  cifmw_kustomize_deploy_osdpd_suffix | string\n  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)\n  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)\n}}] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.037)       0:01:22.843 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.037)       0:01:22.842 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Ensure source files exists path={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n   stage['path'], item.src_file) | path_join\n}}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.887 ********** \nTuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.886 ********** \nok: [localhost] => (item={'name': 'edpm-deployment-values-post-ceph', 'src_file': 'values.yaml'})\n\nTASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.284)       0:01:23.172 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.284)       0:01:23.171 ********** \nok: [localhost] => (item=values.yaml)\n\nTASK [Executing pre_stage hooks for examples/va/hci/deployment name=run_hook] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.259 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.258 ********** \nskipping: [localhost]\n\nTASK [Generate values.yaml for examples/va/hci/deployment name=ci_gen_kustomize_values] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.045)       0:01:23.304 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.045)       0:01:23.303 ********** \n\nTASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.392 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.390 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.039)       0:01:23.431 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.039)       0:01:23.430 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.059)       0:01:23.491 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.059)       0:01:23.490 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.042)       0:01:23.534 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.042)       0:01:23.533 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.223)       0:01:23.757 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.223)       0:01:23.756 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.052)       0:01:23.810 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.052)       0:01:23.809 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{\n  _raw_manifests | reject('equalto', _config_map_content)\n}}, _cifmw_gen_kustomize_values_base_cm_content={{\n  _config_map_content |\n  ansible.utils.remove_keys(\n    target=_cifmw_gen_kustomize_values_reject_expressions,\n    matching_parameter='regex')\n}}, cacheable=False] ***\nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.207)       0:01:24.017 ********** \nTuesday 09 June 2026  13:06:25 +0000 (0:00:00.207)       0:01:24.016 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***\nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.228)       0:01:24.246 ********** \nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.228)       0:01:24.244 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.055)       0:01:24.301 ********** \nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.055)       0:01:24.300 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{\n  (snippet_datadir,\n   '02_ci_data.yaml') | path_join\n}}, src={{ _tmpl_check_path | first }}, mode=0644] ***\nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.264)       0:01:24.566 ********** \nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.264)       0:01:24.565 ********** \nskipping: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***\nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.095)       0:01:24.661 ********** \nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.095)       0:01:24.660 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{\n  (snippet_datadir,\n  '03_user_data_b64.yaml') | path_join\n}}, content={{\n  _base64_patch |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.076)       0:01:24.738 ********** \nTuesday 09 June 2026  13:06:26 +0000 (0:00:00.076)       0:01:24.736 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{\n  (snippet_datadir,\n   '04_user_data.yaml') | path_join\n}}, content={{\n  cifmw_ci_gen_kustomize_values_userdata |\n  default({}) |\n  to_nice_yaml\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.379)       0:01:25.118 ********** \nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.379)       0:01:25.116 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{\n  (\n    snippet_datadir,\n    cifmw_ci_gen_kustomize_values_original_cm_content_file_name\n  ) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.394)       0:01:25.513 ********** \nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.395)       0:01:25.511 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***\nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.418)       0:01:25.931 ********** \nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.418)       0:01:25.930 ********** \nincluded: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost\n\nTASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***\nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.066)       0:01:25.997 ********** \nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.066)       0:01:25.996 ********** \nok: [localhost] => \n    changed: false\n    msg: All assertions passed\n\nTASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***\nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.049)       0:01:26.046 ********** \nTuesday 09 June 2026  13:06:27 +0000 (0:00:00.049)       0:01:26.045 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********\nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.278)       0:01:26.325 ********** \nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.278)       0:01:26.323 ********** \nok: [localhost]\n\nTASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***\nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.080)       0:01:26.405 ********** \nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.080)       0:01:26.404 ********** \nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/03_user_data_b64.yaml)\nok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Combine snippets _content={{\n  _content |\n  default(_cifmw_gen_kustomize_values_base_cm_content, true) |\n  combine(_parsed, recursive=true)\n}}\n] ***\nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.527)       0:01:26.932 ********** \nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.527)       0:01:26.931 ********** \nok: [localhost] => (item=03_user_data_b64.yaml)\nok: [localhost] => (item=04_user_data.yaml)\n\nTASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***\nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.126)       0:01:27.058 ********** \nTuesday 09 June 2026  13:06:28 +0000 (0:00:00.126)       0:01:27.057 ********** \nchanged: [localhost]\n\nTASK [ci_gen_kustomize_values : Output values file backup=True, dest={{\n  (_destdir,\n  cifmw_ci_gen_kustomize_values_dest_filename) | path_join\n}}, content={{\n  (\n    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests\n  ) | cifmw.general.to_nice_yaml_all\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:29 +0000 (0:00:00.254)       0:01:27.313 ********** \nTuesday 09 June 2026  13:06:29 +0000 (0:00:00.254)       0:01:27.312 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Copy generated values for examples/va/hci/deployment mode=0644, backup=True, remote_src=True, src={{\n  (cifmw_kustomize_deploy_basedir,\n   'artifacts', 'ci_gen_kustomize_values',\n   _val['name'], 'values.yaml') | path_join\n}}, dest={{\n  (cifmw_kustomize_deploy_architecture_repo_dest_dir,\n  stage['path'], _val.src_file\n  ) |\n  path_join\n }}] ***\nTuesday 09 June 2026  13:06:29 +0000 (0:00:00.435)       0:01:27.749 ********** \nTuesday 09 June 2026  13:06:29 +0000 (0:00:00.435)       0:01:27.748 ********** \nchanged: [localhost] => (item=edpm-deployment-values-post-ceph)\n\nTASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:29 +0000 (0:00:00.330)       0:01:28.079 ********** \nTuesday 09 June 2026  13:06:29 +0000 (0:00:00.330)       0:01:28.078 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Build kustomized content for examples/va/hci/deployment chdir={{ _chdir }}, _raw_params=oc kustomize] ***\nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.038)       0:01:28.118 ********** \nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.038)       0:01:28.116 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***\nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.365)       0:01:28.483 ********** \nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.365)       0:01:28.482 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/deployment executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***\nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.501)       0:01:28.985 ********** \nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.501)       0:01:28.984 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{\n  _wait_conditions | map('regex_replace',\n    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',\n    '\\1' + item.split(' -> ')[1] | trim + '\\3'\n  ) | list\n}}] ***\nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.079)       0:01:29.065 ********** \nTuesday 09 June 2026  13:06:30 +0000 (0:00:00.079)       0:01:29.064 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/deployment remote_src=True, src={{ _output }}, dest={{\n  (cifmw_kustomize_deploy_kustomizations_dest_dir,\n   stage['build_output'] | basename) | path_join\n}}, mode=0644] ***\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.076)       0:01:29.141 ********** \nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.076)       0:01:29.140 ********** \nchanged: [localhost]\n\nTASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.261)       0:01:29.403 ********** \nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.261)       0:01:29.401 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Apply generated content for examples/va/hci/deployment _raw_params=oc apply -f {{ _cr }}] ***\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.055)       0:01:29.458 ********** \nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.055)       0:01:29.457 ********** \nskipping: [localhost]\n\nTASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/deployment _raw_params=wait_condition.yml] ***\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.066)       0:01:29.525 ********** \nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.066)       0:01:29.524 ********** \nskipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=80m) \nskipping: [localhost]\n\nTASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.124)       0:01:29.650 ********** \nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.124)       0:01:29.649 ********** \nskipping: [localhost]\n\nTASK [Executing post_stage hooks for examples/va/hci/deployment name=run_hook] ***\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.061)       0:01:29.712 ********** \nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.061)       0:01:29.710 ********** \nskipping: [localhost]\n\nPLAY RECAP *********************************************************************\nlocalhost                  : ok=280  changed=76   unreachable=0    failed=0    skipped=115  rescued=0    ignored=0   \n\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.094)       0:01:29.807 ********** \n=============================================================================== \nGet automation contents ------------------------------------------------- 7.80s\nci_setup : Install needed packages -------------------------------------- 4.24s\nci_setup : Install openshift client ------------------------------------- 3.92s\nLoad automation files as fact ------------------------------------------- 1.96s\nci_setup : Manage directories ------------------------------------------- 1.21s\nkustomize_deploy : Build kustomized content for examples/va/hci --------- 1.02s\nGathering Facts --------------------------------------------------------- 0.92s\nci_gen_kustomize_values : Output values file ---------------------------- 0.82s\nci_gen_kustomize_values : Load various snippet files -------------------- 0.76s\nCreate needed SSH keypairs ---------------------------------------------- 0.69s\nci_gen_kustomize_values : Generate CI snippet --------------------------- 0.68s\nci_gen_kustomize_values : Load various snippet files -------------------- 0.66s\nci_gen_kustomize_values : Push base64 CI patches ------------------------ 0.62s\nkustomize_deploy : Copy generated values for examples/va/hci/control-plane --- 0.61s\nci_gen_kustomize_values : Load various snippet files -------------------- 0.61s\nci_gen_kustomize_values : Load various snippet files -------------------- 0.56s\nci_gen_kustomize_values : Generate CI snippet --------------------------- 0.56s\nci_gen_kustomize_values : Generate CI snippet --------------------------- 0.55s\nci_gen_kustomize_values : Generate CI snippet --------------------------- 0.55s\nkustomize_deploy : Output kustomize build in final file ----------------- 0.54s\nTuesday 09 June 2026  13:06:31 +0000 (0:00:00.097)       0:01:29.808 ********** \n=============================================================================== \nci_gen_kustomize_values ------------------------------------------------ 43.08s\nkustomize_deploy ------------------------------------------------------- 21.65s\nci_setup --------------------------------------------------------------- 10.90s\nansible.builtin.slurp --------------------------------------------------- 8.64s\nansible.builtin.set_fact ------------------------------------------------ 2.06s\ngather_facts ------------------------------------------------------------ 0.92s\nnetworking_mapper ------------------------------------------------------- 0.69s\ncommunity.crypto.openssh_keypair ---------------------------------------- 0.69s\nansible.builtin.file ---------------------------------------------------- 0.36s\nansible.builtin.find ---------------------------------------------------- 0.25s\nansible.builtin.include_role -------------------------------------------- 0.22s\nansible.builtin.stat ---------------------------------------------------- 0.19s\nansible.builtin.assert -------------------------------------------------- 0.06s\nansible.builtin.copy ---------------------------------------------------- 0.03s\nansible.builtin.include_vars -------------------------------------------- 0.02s\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \ntotal ------------------------------------------------------------------ 89.77s",
                            "stdout_lines": [
                                "",
                                "PLAY [Test architecture automations] *******************************************",
                                "",
                                "TASK [Gathering Facts ] ********************************************************",
                                "Tuesday 09 June 2026  13:05:01 +0000 (0:00:00.036)       0:00:00.036 ********** ",
                                "Tuesday 09 June 2026  13:05:01 +0000 (0:00:00.035)       0:00:00.035 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [Assert we have the bare minimum to run quiet=True, that=['cifmw_architecture_repo is defined', 'cifmw_architecture_scenario is defined', 'cifmw_networking_mapper_networking_env_def_path is defined']] ***",
                                "Tuesday 09 June 2026  13:05:02 +0000 (0:00:00.924)       0:00:00.961 ********** ",
                                "Tuesday 09 June 2026  13:05:02 +0000 (0:00:00.924)       0:00:00.960 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_setup : Gather variables for each operating system _raw_params={{ item }}] ***",
                                "Tuesday 09 June 2026  13:05:02 +0000 (0:00:00.059)       0:00:01.020 ********** ",
                                "Tuesday 09 June 2026  13:05:02 +0000 (0:00:00.059)       0:00:01.019 ********** ",
                                "ok: [localhost] => (item=/home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_setup/vars/redhat.yml)",
                                "",
                                "TASK [ci_setup : List packages to install var=cifmw_ci_setup_packages] *********",
                                "Tuesday 09 June 2026  13:05:02 +0000 (0:00:00.067)       0:00:01.088 ********** ",
                                "Tuesday 09 June 2026  13:05:02 +0000 (0:00:00.067)       0:00:01.087 ********** ",
                                "ok: [localhost] => ",
                                "    cifmw_ci_setup_packages:",
                                "    - bash-completion",
                                "    - ca-certificates",
                                "    - git-core",
                                "    - make",
                                "    - tar",
                                "    - tmux",
                                "    - python3-pip",
                                "",
                                "TASK [ci_setup : Install needed packages name={{ cifmw_ci_setup_packages }}, state=latest] ***",
                                "Tuesday 09 June 2026  13:05:03 +0000 (0:00:00.033)       0:00:01.121 ********** ",
                                "Tuesday 09 June 2026  13:05:03 +0000 (0:00:00.033)       0:00:01.120 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_setup : Gather version of openshift client _raw_params=oc version --client -o yaml] ***",
                                "Tuesday 09 June 2026  13:05:07 +0000 (0:00:04.242)       0:00:05.364 ********** ",
                                "Tuesday 09 June 2026  13:05:07 +0000 (0:00:04.242)       0:00:05.363 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_setup : Ensure openshift client install path is present path={{ cifmw_ci_setup_oc_install_path }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:07 +0000 (0:00:00.312)       0:00:05.676 ********** ",
                                "Tuesday 09 June 2026  13:05:07 +0000 (0:00:00.312)       0:00:05.675 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_setup : Install openshift client src={{ cifmw_ci_setup_openshift_client_download_uri }}/{{ cifmw_ci_setup_openshift_client_version }}/openshift-client-linux.tar.gz, dest={{ cifmw_ci_setup_oc_install_path }}, remote_src=True, mode=0755, creates={{ cifmw_ci_setup_oc_install_path }}/oc] ***",
                                "Tuesday 09 June 2026  13:05:07 +0000 (0:00:00.339)       0:00:06.016 ********** ",
                                "Tuesday 09 June 2026  13:05:07 +0000 (0:00:00.339)       0:00:06.014 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_setup : Add the OC path to cifmw_path if needed cifmw_path={{ cifmw_ci_setup_oc_install_path }}:{{ ansible_env.PATH }}, cacheable=True] ***",
                                "Tuesday 09 June 2026  13:05:11 +0000 (0:00:03.919)       0:00:09.936 ********** ",
                                "Tuesday 09 June 2026  13:05:11 +0000 (0:00:03.919)       0:00:09.934 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Create completion file] ***************************************",
                                "Tuesday 09 June 2026  13:05:11 +0000 (0:00:00.027)       0:00:09.963 ********** ",
                                "Tuesday 09 June 2026  13:05:11 +0000 (0:00:00.027)       0:00:09.962 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_setup : Source completion from within .bashrc create=True, mode=0644, path={{ ansible_user_dir }}/.bashrc, block=if [ -f ~/.oc_completion ]; then",
                                "  source ~/.oc_completion",
                                "fi] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.286)       0:00:10.249 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.286)       0:00:10.248 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_setup : Check rhsm status _raw_params=subscription-manager status] ****",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.332)       0:00:10.582 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.332)       0:00:10.581 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Gather the repos to be enabled _repos={{",
                                "  cifmw_ci_setup_rhel_rhsm_default_repos +",
                                "  (cifmw_ci_setup_rhel_rhsm_extra_repos | default([]))",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.602 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.601 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Enabling the required repositories. name={{ item }}, state={{ rhsm_repo_state | default('enabled') }}] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.015)       0:00:10.618 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.015)       0:00:10.616 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Get current /etc/redhat-release _raw_params=cat /etc/redhat-release] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.016)       0:00:10.634 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.016)       0:00:10.632 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Print current /etc/redhat-release msg={{ _current_rh_release.stdout }}] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.654 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.653 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Ensure the repos are enabled in the system using yum name={{ item.name }}, baseurl={{ item.baseurl }}, description={{ item.description | default(item.name) }}, gpgcheck={{ item.gpgcheck | default(false) }}, enabled=True, state={{ yum_repo_state | default('present') }}] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.675 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.020)       0:00:10.674 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_setup : Manage directories path={{ item }}, state={{ directory_state }}, mode=0755, owner={{ ansible_user_id }}, group={{ ansible_user_id }}] ***",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.035)       0:00:10.711 ********** ",
                                "Tuesday 09 June 2026  13:05:12 +0000 (0:00:00.035)       0:00:10.710 ********** ",
                                "changed: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/manifests/openstack/cr)",
                                "changed: [localhost] => (item=/home/zuul/ci-framework-data/logs)",
                                "changed: [localhost] => (item=/home/zuul/ci-framework-data/tmp)",
                                "changed: [localhost] => (item=/home/zuul/ci-framework-data/volumes)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/parameters)",
                                "",
                                "TASK [Create needed directories path={{ item }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:13 +0000 (0:00:01.211)       0:00:11.923 ********** ",
                                "Tuesday 09 June 2026  13:05:13 +0000 (0:00:01.211)       0:00:11.921 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/logs)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts)",
                                "",
                                "TASK [Check if we have a mock file path={{ _mock_file }}] **********************",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.358)       0:00:12.281 ********** ",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.358)       0:00:12.280 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [Slurp file from remote src={{ _mock_file }}] *****************************",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.188)       0:00:12.470 ********** ",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.188)       0:00:12.469 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Copy file on localhost dest={{ lookup('env', 'HOME') ~ '/' ~ cifmw_architecture_scenario ~ '.yml' }}, mode=0644, content={{ _mock_content.content | b64decode }}] ***",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.026)       0:00:12.496 ********** ",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.026)       0:00:12.495 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Include var file file={{ lookup('env', 'HOME') ~ '/' ~ cifmw_architecture_scenario ~ '.yml' }}] ***",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.025)       0:00:12.522 ********** ",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.025)       0:00:12.521 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure that architecture repo exists repo={{ cifmw_kustomize_deploy_architecture_repo_url }}, dest={{ cifmw_kustomize_deploy_architecture_repo_dest_dir }}, update=False, version={{ cifmw_kustomize_deploy_architecture_repo_version }}] ***",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.022)       0:00:12.544 ********** ",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.022)       0:00:12.543 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Gather the list of scenario folders paths={{ _va_scenario_dir }}, patterns=kustomization.y*ml, recurse=True] ***",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.369)       0:00:12.914 ********** ",
                                "Tuesday 09 June 2026  13:05:14 +0000 (0:00:00.369)       0:00:12.912 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check if scenario is in the list msg=You need to properly set the `cifmw_architecture_scenario` variable in order to select the architecture-based scenario to deploy. You can take a list of scenario in the `examples/va` folder in the architecture repo.",
                                "] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.389)       0:00:13.303 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.389)       0:00:13.302 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure that destination directory exists path={{ cifmw_kustomize_deploy_kustomizations_dest_dir }}, mode=0755, state=directory] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.038)       0:00:13.342 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.038)       0:00:13.341 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set the final cifmw_architecture_user_kustomize based on its patches _cifmw_kustomize_deploy_user_kustomize={{",
                                "  _cifmw_kustomize_deploy_user_kustomize |",
                                "  default({}) |",
                                "  combine(item.value, recursive=True)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.226)       0:00:13.568 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.226)       0:00:13.567 ********** ",
                                "ok: [localhost] => (item=cifmw_architecture_user_kustomize)",
                                "",
                                "TASK [kustomize_deploy : Set the final cifmw_architecture_user_kustomize_base64 based on its patches _cifmw_kustomize_deploy_user_base64_kustomize={{",
                                "  _b64_kustomize_user_patches |",
                                "  ci_kustomize_deploy_combine_base64_patch_dict",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.102)       0:00:13.670 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.101)       0:00:13.669 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [networking_mapper : Check for Networking Environment Definition file existence path={{ cifmw_networking_mapper_networking_env_def_path }}] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.116)       0:00:13.787 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.116)       0:00:13.785 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [networking_mapper : Check for Networking Definition file existance that=['_net_env_def_stat.stat.exists'], msg=Ensure that the Networking Environment Definition file exists in {{ cifmw_networking_mapper_networking_env_def_path }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.257)       0:00:14.044 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.257)       0:00:14.043 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [networking_mapper : Load the Networking Definition from file path={{ cifmw_networking_mapper_networking_env_def_path }}] ***",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.059)       0:00:14.104 ********** ",
                                "Tuesday 09 June 2026  13:05:15 +0000 (0:00:00.059)       0:00:14.103 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [networking_mapper : Set cifmw_networking_env_definition is present cifmw_networking_env_definition={{",
                                "  _net_env_def_slurp['content'] |",
                                "  b64decode |",
                                "  from_yaml",
                                "}}, cacheable=True] ***",
                                "Tuesday 09 June 2026  13:05:16 +0000 (0:00:00.290)       0:00:14.395 ********** ",
                                "Tuesday 09 June 2026  13:05:16 +0000 (0:00:00.290)       0:00:14.394 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [Discover automation files paths={{",
                                "  [cifmw_architecture_repo, _automation_relative] |",
                                "  path_join",
                                "}}, patterns=*.yaml] ***",
                                "Tuesday 09 June 2026  13:05:16 +0000 (0:00:00.080)       0:00:14.476 ********** ",
                                "Tuesday 09 June 2026  13:05:16 +0000 (0:00:00.080)       0:00:14.474 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [Get automation contents path={{ item.path }}] ****************************",
                                "Tuesday 09 June 2026  13:05:16 +0000 (0:00:00.251)       0:00:14.727 ********** ",
                                "Tuesday 09 June 2026  13:05:16 +0000 (0:00:00.251)       0:00:14.726 ********** ",
                                "ok: [localhost] => (item=bgp-l3-xl-adoption.yaml)",
                                "ok: [localhost] => (item=bgp-l3-xl.yaml)",
                                "ok: [localhost] => (item=bgp_dt01.yaml)",
                                "ok: [localhost] => (item=bgp_dt04_ipv6.yaml)",
                                "ok: [localhost] => (item=bmo01.yaml)",
                                "ok: [localhost] => (item=dcn.yaml)",
                                "ok: [localhost] => (item=dt-sharded.yaml)",
                                "ok: [localhost] => (item=dz-storage.yaml)",
                                "ok: [localhost] => (item=hci-adoption.yaml)",
                                "ok: [localhost] => (item=hci-ironic.yaml)",
                                "ok: [localhost] => (item=hci.yaml)",
                                "ok: [localhost] => (item=multi-namespace-skmo.yaml)",
                                "ok: [localhost] => (item=multi-namespace.yaml)",
                                "ok: [localhost] => (item=nfv-ovs-dpdk-sriov-adoption.yaml)",
                                "ok: [localhost] => (item=nfv-ovs-dpdk-sriov-hci.yaml)",
                                "ok: [localhost] => (item=nova-three-cells.yaml)",
                                "ok: [localhost] => (item=nova01alpha.yaml)",
                                "ok: [localhost] => (item=nova02beta.yaml)",
                                "ok: [localhost] => (item=nova03gamma.yaml)",
                                "ok: [localhost] => (item=nova04delta-adoption.yaml)",
                                "ok: [localhost] => (item=nova04delta.yaml)",
                                "ok: [localhost] => (item=nova05epsilon.yaml)",
                                "ok: [localhost] => (item=nvidia-mdev.yaml)",
                                "ok: [localhost] => (item=nvidia-vfio-passthrough-adoption.yaml)",
                                "ok: [localhost] => (item=nvidia-vfio-passthrough.yaml)",
                                "ok: [localhost] => (item=osasinfra-ipv6.yaml)",
                                "ok: [localhost] => (item=osasinfra.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-2nodesets.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-ipv6-2nodesets.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-ipv6.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-networker.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk.yaml)",
                                "ok: [localhost] => (item=pidone.yaml)",
                                "ok: [localhost] => (item=sriov.yaml)",
                                "ok: [localhost] => (item=uni01alpha-adoption.yaml)",
                                "ok: [localhost] => (item=uni01alpha.yaml)",
                                "ok: [localhost] => (item=uni02beta-adoption.yaml)",
                                "ok: [localhost] => (item=uni02beta.yaml)",
                                "ok: [localhost] => (item=uni04delta-adoption.yaml)",
                                "ok: [localhost] => (item=uni04delta-ipv6-adoption.yaml)",
                                "ok: [localhost] => (item=uni04delta-ipv6.yaml)",
                                "ok: [localhost] => (item=uni04delta.yaml)",
                                "ok: [localhost] => (item=uni05epsilon-adoption.yaml)",
                                "ok: [localhost] => (item=uni05epsilon.yaml)",
                                "ok: [localhost] => (item=uni06zeta-adoption.yaml)",
                                "ok: [localhost] => (item=uni06zeta.yaml)",
                                "ok: [localhost] => (item=uni07eta-adoption.yaml)",
                                "ok: [localhost] => (item=uni07eta.yaml)",
                                "ok: [localhost] => (item=uni09iota-adoption.yaml)",
                                "ok: [localhost] => (item=uni09iota.yaml)",
                                "ok: [localhost] => (item=vhosts-compact.yaml)",
                                "",
                                "TASK [Load automation files as fact vas={{",
                                "  vas | default({}) |",
                                "  combine(item.content | b64decode | from_yaml, recursive=true)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:24 +0000 (0:00:07.798)       0:00:22.525 ********** ",
                                "Tuesday 09 June 2026  13:05:24 +0000 (0:00:07.798)       0:00:22.524 ********** ",
                                "ok: [localhost] => (item=bgp-l3-xl-adoption.yaml)",
                                "ok: [localhost] => (item=bgp-l3-xl.yaml)",
                                "ok: [localhost] => (item=bgp_dt01.yaml)",
                                "ok: [localhost] => (item=bgp_dt04_ipv6.yaml)",
                                "ok: [localhost] => (item=bmo01.yaml)",
                                "ok: [localhost] => (item=dcn.yaml)",
                                "ok: [localhost] => (item=dt-sharded.yaml)",
                                "ok: [localhost] => (item=dz-storage.yaml)",
                                "ok: [localhost] => (item=hci-adoption.yaml)",
                                "ok: [localhost] => (item=hci-ironic.yaml)",
                                "ok: [localhost] => (item=hci.yaml)",
                                "ok: [localhost] => (item=multi-namespace-skmo.yaml)",
                                "ok: [localhost] => (item=multi-namespace.yaml)",
                                "ok: [localhost] => (item=nfv-ovs-dpdk-sriov-adoption.yaml)",
                                "ok: [localhost] => (item=nfv-ovs-dpdk-sriov-hci.yaml)",
                                "ok: [localhost] => (item=nova-three-cells.yaml)",
                                "ok: [localhost] => (item=nova01alpha.yaml)",
                                "ok: [localhost] => (item=nova02beta.yaml)",
                                "ok: [localhost] => (item=nova03gamma.yaml)",
                                "ok: [localhost] => (item=nova04delta-adoption.yaml)",
                                "ok: [localhost] => (item=nova04delta.yaml)",
                                "ok: [localhost] => (item=nova05epsilon.yaml)",
                                "ok: [localhost] => (item=nvidia-mdev.yaml)",
                                "ok: [localhost] => (item=nvidia-vfio-passthrough-adoption.yaml)",
                                "ok: [localhost] => (item=nvidia-vfio-passthrough.yaml)",
                                "ok: [localhost] => (item=osasinfra-ipv6.yaml)",
                                "ok: [localhost] => (item=osasinfra.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-2nodesets.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-ipv6-2nodesets.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-ipv6.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov-networker.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk-sriov.yaml)",
                                "ok: [localhost] => (item=ovs-dpdk.yaml)",
                                "ok: [localhost] => (item=pidone.yaml)",
                                "ok: [localhost] => (item=sriov.yaml)",
                                "ok: [localhost] => (item=uni01alpha-adoption.yaml)",
                                "ok: [localhost] => (item=uni01alpha.yaml)",
                                "ok: [localhost] => (item=uni02beta-adoption.yaml)",
                                "ok: [localhost] => (item=uni02beta.yaml)",
                                "ok: [localhost] => (item=uni04delta-adoption.yaml)",
                                "ok: [localhost] => (item=uni04delta-ipv6-adoption.yaml)",
                                "ok: [localhost] => (item=uni04delta-ipv6.yaml)",
                                "ok: [localhost] => (item=uni04delta.yaml)",
                                "ok: [localhost] => (item=uni05epsilon-adoption.yaml)",
                                "ok: [localhost] => (item=uni05epsilon.yaml)",
                                "ok: [localhost] => (item=uni06zeta-adoption.yaml)",
                                "ok: [localhost] => (item=uni06zeta.yaml)",
                                "ok: [localhost] => (item=uni07eta-adoption.yaml)",
                                "ok: [localhost] => (item=uni07eta.yaml)",
                                "ok: [localhost] => (item=uni09iota-adoption.yaml)",
                                "ok: [localhost] => (item=uni09iota.yaml)",
                                "ok: [localhost] => (item=vhosts-compact.yaml)",
                                "",
                                "TASK [Prepare automation data cifmw_deploy_architecture_steps={{ vas['vas'][cifmw_architecture_scenario] }}] ***",
                                "Tuesday 09 June 2026  13:05:26 +0000 (0:00:01.956)       0:00:24.482 ********** ",
                                "Tuesday 09 June 2026  13:05:26 +0000 (0:00:01.956)       0:00:24.480 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [Create needed SSH keypairs comment={{ item.comment }}, path={{ item.path }}, type=ecdsa, size=521] ***",
                                "Tuesday 09 June 2026  13:05:26 +0000 (0:00:00.051)       0:00:24.533 ********** ",
                                "Tuesday 09 June 2026  13:05:26 +0000 (0:00:00.051)       0:00:24.532 ********** ",
                                "changed: [localhost] => (item={'comment': 'Nova migration', 'path': '/home/zuul/ci-framework-data/artifacts/ecdsa_nova_migration'})",
                                "changed: [localhost] => (item={'comment': 'EDPM deploy key', 'path': '/home/zuul/ci-framework-data/artifacts/ecdsa_deploy'})",
                                "",
                                "TASK [Load public SSH keys path={{ item }}] ************************************",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.687)       0:00:25.221 ********** ",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.687)       0:00:25.219 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_nova_migration.pub)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_deploy.pub)",
                                "",
                                "TASK [Load private SSH keys path={{ item }}] ***********************************",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.427)       0:00:25.648 ********** ",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.427)       0:00:25.646 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_nova_migration)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ecdsa_deploy)",
                                "",
                                "TASK [Generate needed facts out of local files cifmw_ci_gen_kustomize_values_ssh_authorizedkeys={{",
                                "  _pub_keys.results[1].content | b64decode",
                                "}}, cifmw_ci_gen_kustomize_values_ssh_private_key={{",
                                "  _priv_keys.results[1].content | b64decode",
                                "}}, cifmw_ci_gen_kustomize_values_ssh_public_key={{",
                                "  _pub_keys.results[1].content | b64decode",
                                "}}, cifmw_ci_gen_kustomize_values_migration_pub_key={{",
                                "  _pub_keys.results[0].content | b64decode",
                                "}}, cifmw_ci_gen_kustomize_values_migration_priv_key={{",
                                "  _priv_keys.results[0].content | b64decode",
                                "}}, cifmw_ci_gen_kustomize_values_sshd_ranges={{",
                                "  [",
                                "    cifmw_networking_env_definition.networks.ctlplane.network_v4 | default (none),",
                                "    cifmw_networking_env_definition.networks.ctlplane.network_v6 | default (none)",
                                "  ] | select()",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.392)       0:00:26.040 ********** ",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.392)       0:00:26.039 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [Execute deployment steps name=kustomize_deploy, tasks_from=execute_step.yml, apply={'tags': ['edpm_deploy']}] ***",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.053)       0:00:26.094 ********** ",
                                "Tuesday 09 June 2026  13:05:27 +0000 (0:00:00.053)       0:00:26.093 ********** ",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.218)       0:00:26.312 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.218)       0:00:26.311 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.068)       0:00:26.380 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.067)       0:00:26.379 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.034)       0:00:26.415 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.034)       0:00:26.413 ********** ",
                                "ok: [localhost] => (item=oc -n openstack wait nncp -l osp/nncm-config-type=standard --for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured --timeout=5m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.448 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.447 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.024)       0:00:26.472 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.024)       0:00:26.471 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.506 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.033)       0:00:26.505 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.046)       0:00:26.553 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.046)       0:00:26.552 ********** ",
                                "ok: [localhost] => (item={'name': 'network-values', 'src_file': 'values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.260)       0:00:26.814 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.260)       0:00:26.812 ********** ",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci/control-plane/networking/nncp name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.094)       0:00:26.909 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.095)       0:00:26.908 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci/control-plane/networking/nncp name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.058)       0:00:26.967 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.058)       0:00:26.966 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.116)       0:00:27.084 ********** ",
                                "Tuesday 09 June 2026  13:05:28 +0000 (0:00:00.116)       0:00:27.083 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.052)       0:00:27.137 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.052)       0:00:27.135 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.077)       0:00:27.214 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.077)       0:00:27.213 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.273 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.271 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.223)       0:00:27.496 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.223)       0:00:27.494 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.554 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.058)       0:00:27.553 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.238)       0:00:27.792 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.238)       0:00:27.791 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.296)       0:00:28.089 ********** ",
                                "Tuesday 09 June 2026  13:05:29 +0000 (0:00:00.296)       0:00:28.088 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/network_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert we have needed parameters that=['cifmw_networking_env_definition is defined']] ***",
                                "Tuesday 09 June 2026  13:05:30 +0000 (0:00:00.087)       0:00:28.177 ********** ",
                                "Tuesday 09 June 2026  13:05:30 +0000 (0:00:00.087)       0:00:28.175 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:30 +0000 (0:00:00.077)       0:00:28.254 ********** ",
                                "Tuesday 09 June 2026  13:05:30 +0000 (0:00:00.077)       0:00:28.253 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:30 +0000 (0:00:00.176)       0:00:28.431 ********** ",
                                "Tuesday 09 June 2026  13:05:30 +0000 (0:00:00.176)       0:00:28.430 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.682)       0:00:29.114 ********** ",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.682)       0:00:29.113 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.059)       0:00:29.173 ********** ",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.059)       0:00:29.172 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.430)       0:00:29.604 ********** ",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.430)       0:00:29.603 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.411)       0:00:30.015 ********** ",
                                "Tuesday 09 June 2026  13:05:31 +0000 (0:00:00.411)       0:00:30.014 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.479)       0:00:30.494 ********** ",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.479)       0:00:30.493 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.118)       0:00:30.613 ********** ",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.118)       0:00:30.611 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.082)       0:00:30.695 ********** ",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.082)       0:00:30.694 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.244)       0:00:30.939 ********** ",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.244)       0:00:30.938 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.085)       0:00:31.025 ********** ",
                                "Tuesday 09 June 2026  13:05:32 +0000 (0:00:00.085)       0:00:31.024 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:05:33 +0000 (0:00:00.662)       0:00:31.687 ********** ",
                                "Tuesday 09 June 2026  13:05:33 +0000 (0:00:00.662)       0:00:31.686 ********** ",
                                "ok: [localhost] => (item=02_ci_data.yaml)",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:33 +0000 (0:00:00.130)       0:00:31.818 ********** ",
                                "Tuesday 09 June 2026  13:05:33 +0000 (0:00:00.130)       0:00:31.816 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:33 +0000 (0:00:00.245)       0:00:32.063 ********** ",
                                "Tuesday 09 June 2026  13:05:33 +0000 (0:00:00.245)       0:00:32.062 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci/control-plane/networking/nncp mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:05:34 +0000 (0:00:00.478)       0:00:32.541 ********** ",
                                "Tuesday 09 June 2026  13:05:34 +0000 (0:00:00.478)       0:00:32.540 ********** ",
                                "changed: [localhost] => (item=network-values)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:34 +0000 (0:00:00.340)       0:00:32.881 ********** ",
                                "Tuesday 09 June 2026  13:05:34 +0000 (0:00:00.340)       0:00:32.880 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci/control-plane/networking/nncp chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:05:34 +0000 (0:00:00.060)       0:00:32.942 ********** ",
                                "Tuesday 09 June 2026  13:05:34 +0000 (0:00:00.060)       0:00:32.941 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.493)       0:00:33.435 ********** ",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.493)       0:00:33.434 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/control-plane/networking/nncp executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.475)       0:00:33.910 ********** ",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.474)       0:00:33.909 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.060)       0:00:33.971 ********** ",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.060)       0:00:33.969 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/control-plane/networking/nncp remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.047)       0:00:34.018 ********** ",
                                "Tuesday 09 June 2026  13:05:35 +0000 (0:00:00.047)       0:00:34.017 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.323)       0:00:34.341 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.323)       0:00:34.340 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci/control-plane/networking/nncp _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.050)       0:00:34.392 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.050)       0:00:34.390 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/control-plane/networking/nncp _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.448 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.446 ********** ",
                                "skipping: [localhost] => (item=oc -n openstack wait nncp -l osp/nncm-config-type=standard --for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured --timeout=5m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.503 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.055)       0:00:34.502 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci/control-plane/networking/nncp name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.044)       0:00:34.548 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.044)       0:00:34.547 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.051)       0:00:34.599 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.050)       0:00:34.598 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.073)       0:00:34.672 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.073)       0:00:34.671 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.035)       0:00:34.707 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.035)       0:00:34.706 ********** ",
                                "ok: [localhost] => (item=oc -n metallb-system wait pod -l app=metallb -l component=speaker --for condition=Ready --timeout=5m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.040)       0:00:34.748 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.040)       0:00:34.747 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.027)       0:00:34.775 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.027)       0:00:34.774 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.037)       0:00:34.813 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.037)       0:00:34.811 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.054)       0:00:34.867 ********** ",
                                "Tuesday 09 June 2026  13:05:36 +0000 (0:00:00.054)       0:00:34.866 ********** ",
                                "ok: [localhost] => (item={'name': 'network-values', 'src_file': 'nncp/values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.269)       0:00:35.136 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.269)       0:00:35.135 ********** ",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci/control-plane/networking name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.089)       0:00:35.226 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.089)       0:00:35.225 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci/control-plane/networking name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.040)       0:00:35.266 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.040)       0:00:35.265 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.092)       0:00:35.359 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.092)       0:00:35.357 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.038)       0:00:35.397 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.038)       0:00:35.396 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.081)       0:00:35.479 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.081)       0:00:35.477 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.044)       0:00:35.523 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.044)       0:00:35.522 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.226)       0:00:35.750 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.226)       0:00:35.749 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.054)       0:00:35.805 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.054)       0:00:35.804 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.218)       0:00:36.024 ********** ",
                                "Tuesday 09 June 2026  13:05:37 +0000 (0:00:00.218)       0:00:36.022 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.238)       0:00:36.262 ********** ",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.238)       0:00:36.261 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/network_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert we have needed parameters that=['cifmw_networking_env_definition is defined']] ***",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.094)       0:00:36.357 ********** ",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.094)       0:00:36.355 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.044)       0:00:36.402 ********** ",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.044)       0:00:36.400 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.254)       0:00:36.657 ********** ",
                                "Tuesday 09 June 2026  13:05:38 +0000 (0:00:00.255)       0:00:36.655 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:05:39 +0000 (0:00:00.562)       0:00:37.219 ********** ",
                                "Tuesday 09 June 2026  13:05:39 +0000 (0:00:00.562)       0:00:37.218 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:39 +0000 (0:00:00.060)       0:00:37.279 ********** ",
                                "Tuesday 09 June 2026  13:05:39 +0000 (0:00:00.060)       0:00:37.278 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:39 +0000 (0:00:00.367)       0:00:37.647 ********** ",
                                "Tuesday 09 June 2026  13:05:39 +0000 (0:00:00.367)       0:00:37.646 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.485)       0:00:38.133 ********** ",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.486)       0:00:38.132 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.494)       0:00:38.628 ********** ",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.494)       0:00:38.627 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.116)       0:00:38.744 ********** ",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.116)       0:00:38.743 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.075)       0:00:38.820 ********** ",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.075)       0:00:38.818 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.246)       0:00:39.066 ********** ",
                                "Tuesday 09 June 2026  13:05:40 +0000 (0:00:00.246)       0:00:39.065 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.076)       0:00:39.143 ********** ",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.076)       0:00:39.142 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.564)       0:00:39.708 ********** ",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.564)       0:00:39.706 ********** ",
                                "ok: [localhost] => (item=02_ci_data.yaml)",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.149)       0:00:39.857 ********** ",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.149)       0:00:39.856 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.213)       0:00:40.071 ********** ",
                                "Tuesday 09 June 2026  13:05:41 +0000 (0:00:00.213)       0:00:40.070 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci/control-plane/networking mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:05:42 +0000 (0:00:00.404)       0:00:40.476 ********** ",
                                "Tuesday 09 June 2026  13:05:42 +0000 (0:00:00.404)       0:00:40.474 ********** ",
                                "ok: [localhost] => (item=network-values)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:42 +0000 (0:00:00.230)       0:00:40.706 ********** ",
                                "Tuesday 09 June 2026  13:05:42 +0000 (0:00:00.230)       0:00:40.705 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci/control-plane/networking chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:05:42 +0000 (0:00:00.046)       0:00:40.752 ********** ",
                                "Tuesday 09 June 2026  13:05:42 +0000 (0:00:00.046)       0:00:40.751 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.385)       0:00:41.138 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.385)       0:00:41.136 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/control-plane/networking executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.400)       0:00:41.538 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.400)       0:00:41.537 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.052)       0:00:41.591 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.052)       0:00:41.589 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/control-plane/networking remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.064)       0:00:41.655 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.064)       0:00:41.654 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.231)       0:00:41.886 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.231)       0:00:41.885 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci/control-plane/networking _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.045)       0:00:41.932 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.045)       0:00:41.930 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/control-plane/networking _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.048)       0:00:41.980 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.048)       0:00:41.979 ********** ",
                                "skipping: [localhost] => (item=oc -n metallb-system wait pod -l app=metallb -l component=speaker --for condition=Ready --timeout=5m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.055)       0:00:42.036 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.055)       0:00:42.034 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci/control-plane/networking name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.039)       0:00:42.075 ********** ",
                                "Tuesday 09 June 2026  13:05:43 +0000 (0:00:00.039)       0:00:42.074 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.042)       0:00:42.118 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.042)       0:00:42.116 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.037)       0:00:42.155 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.037)       0:00:42.153 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.036)       0:00:42.192 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.036)       0:00:42.190 ********** ",
                                "ok: [localhost] => (item=oc -n openstack wait osctlplane controlplane --for condition=Ready --timeout=60m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.034)       0:00:42.226 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.034)       0:00:42.225 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.023)       0:00:42.250 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.023)       0:00:42.249 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.032)       0:00:42.283 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.032)       0:00:42.281 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.053)       0:00:42.336 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.053)       0:00:42.335 ********** ",
                                "ok: [localhost] => (item={'name': 'service-values', 'src_file': 'service-values.yaml'})",
                                "ok: [localhost] => (item={'name': 'network-values', 'src_file': 'networking/nncp/values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.435)       0:00:42.771 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.435)       0:00:42.770 ********** ",
                                "ok: [localhost] => (item=service-values.yaml)",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci/control-plane name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.153)       0:00:42.925 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.153)       0:00:42.923 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci/control-plane name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.052)       0:00:42.977 ********** ",
                                "Tuesday 09 June 2026  13:05:44 +0000 (0:00:00.052)       0:00:42.976 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.150)       0:00:43.128 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.150)       0:00:43.127 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.064)       0:00:43.192 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.064)       0:00:43.191 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.076)       0:00:43.269 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.076)       0:00:43.268 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.048)       0:00:43.318 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.048)       0:00:43.316 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.216)       0:00:43.534 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.216)       0:00:43.533 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.056)       0:00:43.591 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.056)       0:00:43.590 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.201)       0:00:43.793 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.201)       0:00:43.792 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.202)       0:00:43.995 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.202)       0:00:43.994 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.049)       0:00:44.045 ********** ",
                                "Tuesday 09 June 2026  13:05:45 +0000 (0:00:00.049)       0:00:44.043 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.184)       0:00:44.229 ********** ",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.184)       0:00:44.228 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.083)       0:00:44.313 ********** ",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.083)       0:00:44.311 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.063)       0:00:44.377 ********** ",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.063)       0:00:44.375 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.387)       0:00:44.764 ********** ",
                                "Tuesday 09 June 2026  13:05:46 +0000 (0:00:00.387)       0:00:44.762 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.439)       0:00:45.203 ********** ",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.439)       0:00:45.202 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.473)       0:00:45.677 ********** ",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.473)       0:00:45.675 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.098)       0:00:45.775 ********** ",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.098)       0:00:45.774 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.049)       0:00:45.825 ********** ",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.049)       0:00:45.824 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.232)       0:00:46.057 ********** ",
                                "Tuesday 09 June 2026  13:05:47 +0000 (0:00:00.232)       0:00:46.056 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.068)       0:00:46.126 ********** ",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.068)       0:00:46.124 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.392)       0:00:46.518 ********** ",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.392)       0:00:46.517 ********** ",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.130)       0:00:46.648 ********** ",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.130)       0:00:46.647 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.238)       0:00:46.887 ********** ",
                                "Tuesday 09 June 2026  13:05:48 +0000 (0:00:00.238)       0:00:46.886 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.486)       0:00:47.374 ********** ",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.487)       0:00:47.373 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.071)       0:00:47.445 ********** ",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.071)       0:00:47.444 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.101)       0:00:47.547 ********** ",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.101)       0:00:47.546 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.069)       0:00:47.617 ********** ",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.069)       0:00:47.615 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.252)       0:00:47.869 ********** ",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.252)       0:00:47.868 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.087)       0:00:47.957 ********** ",
                                "Tuesday 09 June 2026  13:05:49 +0000 (0:00:00.087)       0:00:47.955 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.252)       0:00:48.209 ********** ",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.252)       0:00:48.208 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.276)       0:00:48.486 ********** ",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.276)       0:00:48.485 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/network_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert we have needed parameters that=['cifmw_networking_env_definition is defined']] ***",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.055)       0:00:48.542 ********** ",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.055)       0:00:48.540 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.060)       0:00:48.603 ********** ",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.060)       0:00:48.601 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.253)       0:00:48.856 ********** ",
                                "Tuesday 09 June 2026  13:05:50 +0000 (0:00:00.253)       0:00:48.855 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:05:51 +0000 (0:00:00.547)       0:00:49.404 ********** ",
                                "Tuesday 09 June 2026  13:05:51 +0000 (0:00:00.547)       0:00:49.403 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:51 +0000 (0:00:00.054)       0:00:49.459 ********** ",
                                "Tuesday 09 June 2026  13:05:51 +0000 (0:00:00.054)       0:00:49.457 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:51 +0000 (0:00:00.429)       0:00:49.889 ********** ",
                                "Tuesday 09 June 2026  13:05:51 +0000 (0:00:00.429)       0:00:49.887 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.430)       0:00:50.320 ********** ",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.430)       0:00:50.318 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.489)       0:00:50.809 ********** ",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.489)       0:00:50.808 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.135)       0:00:50.945 ********** ",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.135)       0:00:50.944 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.048)       0:00:50.994 ********** ",
                                "Tuesday 09 June 2026  13:05:52 +0000 (0:00:00.048)       0:00:50.993 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.272)       0:00:51.266 ********** ",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.272)       0:00:51.265 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.037)       0:00:51.304 ********** ",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.037)       0:00:51.302 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.606)       0:00:51.910 ********** ",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.606)       0:00:51.909 ********** ",
                                "ok: [localhost] => (item=02_ci_data.yaml)",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.120)       0:00:52.031 ********** ",
                                "Tuesday 09 June 2026  13:05:53 +0000 (0:00:00.120)       0:00:52.029 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:54 +0000 (0:00:00.254)       0:00:52.286 ********** ",
                                "Tuesday 09 June 2026  13:05:54 +0000 (0:00:00.254)       0:00:52.284 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci/control-plane mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:05:54 +0000 (0:00:00.454)       0:00:52.740 ********** ",
                                "Tuesday 09 June 2026  13:05:54 +0000 (0:00:00.454)       0:00:52.739 ********** ",
                                "changed: [localhost] => (item=service-values)",
                                "ok: [localhost] => (item=network-values)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:55 +0000 (0:00:00.612)       0:00:53.352 ********** ",
                                "Tuesday 09 June 2026  13:05:55 +0000 (0:00:00.612)       0:00:53.351 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci/control-plane chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:05:55 +0000 (0:00:00.079)       0:00:53.432 ********** ",
                                "Tuesday 09 June 2026  13:05:55 +0000 (0:00:00.079)       0:00:53.431 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:55 +0000 (0:00:00.444)       0:00:53.877 ********** ",
                                "Tuesday 09 June 2026  13:05:55 +0000 (0:00:00.444)       0:00:53.875 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/control-plane executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.515)       0:00:54.392 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.515)       0:00:54.391 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.071)       0:00:54.463 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.071)       0:00:54.462 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/control-plane remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.086)       0:00:54.550 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.086)       0:00:54.549 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.282)       0:00:54.833 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.282)       0:00:54.832 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci/control-plane _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.037)       0:00:54.871 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.037)       0:00:54.869 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/control-plane _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.048)       0:00:54.919 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.048)       0:00:54.918 ********** ",
                                "skipping: [localhost] => (item=oc -n openstack wait osctlplane controlplane --for condition=Ready --timeout=60m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.056)       0:00:54.976 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.056)       0:00:54.974 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci/control-plane name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.050)       0:00:55.027 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.050)       0:00:55.025 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.063)       0:00:55.090 ********** ",
                                "Tuesday 09 June 2026  13:05:56 +0000 (0:00:00.063)       0:00:55.089 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.051)       0:00:55.142 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.051)       0:00:55.140 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.188 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.187 ********** ",
                                "ok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.047)       0:00:55.236 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.047)       0:00:55.234 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.034)       0:00:55.270 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.034)       0:00:55.269 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.317 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.046)       0:00:55.315 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.374 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.373 ********** ",
                                "ok: [localhost] => (item={'name': 'edpm-nodeset-values', 'src_file': 'values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.249)       0:00:55.624 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.249)       0:00:55.622 ********** ",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci/edpm-pre-ceph/nodeset name=run_hook] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.080)       0:00:55.704 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.080)       0:00:55.703 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci/edpm-pre-ceph/nodeset name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.762 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.057)       0:00:55.761 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.124)       0:00:55.887 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.124)       0:00:55.885 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.040)       0:00:55.927 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.040)       0:00:55.926 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.059)       0:00:55.987 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.059)       0:00:55.986 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.053)       0:00:56.040 ********** ",
                                "Tuesday 09 June 2026  13:05:57 +0000 (0:00:00.053)       0:00:56.039 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.187)       0:00:56.228 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.187)       0:00:56.227 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.047)       0:00:56.275 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.047)       0:00:56.274 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.236)       0:00:56.512 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.236)       0:00:56.511 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.288)       0:00:56.800 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.288)       0:00:56.799 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/edpm_nodeset_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Check if all required variables for accessing the node is provided. _raw_params=edpm_core_asserts.yml] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.054)       0:00:56.855 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.054)       0:00:56.853 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/edpm_core_asserts.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure the required parameters are defined and configured. that=['cifmw_networking_env_definition is defined', 'cifmw_ci_gen_kustomize_values_ssh_authorizedkeys is defined', \"cifmw_ci_gen_kustomize_values_ssh_authorizedkeys != ''\", 'cifmw_ci_gen_kustomize_values_ssh_private_key is defined', \"cifmw_ci_gen_kustomize_values_ssh_private_key != ''\", 'cifmw_ci_gen_kustomize_values_ssh_public_key is defined', \"cifmw_ci_gen_kustomize_values_ssh_public_key != ''\"]] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.053)       0:00:56.908 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.053)       0:00:56.907 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Get common data for dataplane templating _raw_params=edpm_core_facts.yml] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.055)       0:00:56.963 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.055)       0:00:56.962 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/edpm_core_facts.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Fetch the already deployed services for further usage _raw_params=oc get osdps --namespace openstack --no-headers -o custom-columns=\":metadata.name\"] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.073)       0:00:57.037 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.073)       0:00:57.036 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose the deployed services as a fact ci_gen_kustomize_edpm_nodeset_predeployed_services={{",
                                "  _ci_gen_kustomize_deployed_services_stdout.stdout_lines | default ([])",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.050)       0:00:57.088 ********** ",
                                "Tuesday 09 June 2026  13:05:58 +0000 (0:00:00.050)       0:00:57.087 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Check if required variables for nova migration are provided. that=['cifmw_ci_gen_kustomize_values_migration_priv_key is defined', \"cifmw_ci_gen_kustomize_values_migration_priv_key != ''\", 'cifmw_ci_gen_kustomize_values_migration_pub_key is defined', \"cifmw_ci_gen_kustomize_values_migration_pub_key != ''\"]] ***",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.101)       0:00:57.190 ********** ",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.101)       0:00:57.189 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.045)       0:00:57.235 ********** ",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.045)       0:00:57.234 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.208)       0:00:57.443 ********** ",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.208)       0:00:57.442 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.552)       0:00:57.996 ********** ",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.552)       0:00:57.994 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.060)       0:00:58.057 ********** ",
                                "Tuesday 09 June 2026  13:05:59 +0000 (0:00:00.060)       0:00:58.055 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:00 +0000 (0:00:00.493)       0:00:58.550 ********** ",
                                "Tuesday 09 June 2026  13:06:00 +0000 (0:00:00.493)       0:00:58.549 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:00 +0000 (0:00:00.465)       0:00:59.015 ********** ",
                                "Tuesday 09 June 2026  13:06:00 +0000 (0:00:00.465)       0:00:59.014 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.440)       0:00:59.456 ********** ",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.440)       0:00:59.454 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.079)       0:00:59.535 ********** ",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.079)       0:00:59.534 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.066)       0:00:59.602 ********** ",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.066)       0:00:59.601 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.212)       0:00:59.815 ********** ",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.212)       0:00:59.813 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.070)       0:00:59.885 ********** ",
                                "Tuesday 09 June 2026  13:06:01 +0000 (0:00:00.070)       0:00:59.884 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/02_ci_data.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:06:02 +0000 (0:00:00.757)       0:01:00.643 ********** ",
                                "Tuesday 09 June 2026  13:06:02 +0000 (0:00:00.758)       0:01:00.642 ********** ",
                                "ok: [localhost] => (item=02_ci_data.yaml)",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:02 +0000 (0:00:00.146)       0:01:00.790 ********** ",
                                "Tuesday 09 June 2026  13:06:02 +0000 (0:00:00.146)       0:01:00.789 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:02 +0000 (0:00:00.237)       0:01:01.027 ********** ",
                                "Tuesday 09 June 2026  13:06:02 +0000 (0:00:00.237)       0:01:01.026 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci/edpm-pre-ceph/nodeset mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:06:03 +0000 (0:00:00.443)       0:01:01.471 ********** ",
                                "Tuesday 09 June 2026  13:06:03 +0000 (0:00:00.443)       0:01:01.470 ********** ",
                                "changed: [localhost] => (item=edpm-nodeset-values)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:03 +0000 (0:00:00.320)       0:01:01.791 ********** ",
                                "Tuesday 09 June 2026  13:06:03 +0000 (0:00:00.320)       0:01:01.790 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci/edpm-pre-ceph/nodeset chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:06:03 +0000 (0:00:00.042)       0:01:01.834 ********** ",
                                "Tuesday 09 June 2026  13:06:03 +0000 (0:00:00.042)       0:01:01.833 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.353)       0:01:02.188 ********** ",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.353)       0:01:02.186 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/edpm-pre-ceph/nodeset executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.486)       0:01:02.675 ********** ",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.486)       0:01:02.673 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.041)       0:01:02.716 ********** ",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.041)       0:01:02.715 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/edpm-pre-ceph/nodeset remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.049)       0:01:02.765 ********** ",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.049)       0:01:02.764 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.289)       0:01:03.055 ********** ",
                                "Tuesday 09 June 2026  13:06:04 +0000 (0:00:00.290)       0:01:03.054 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci/edpm-pre-ceph/nodeset _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.072)       0:01:03.127 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.072)       0:01:03.126 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/edpm-pre-ceph/nodeset _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.062)       0:01:03.190 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.062)       0:01:03.188 ********** ",
                                "skipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:03.250 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:03.248 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci/edpm-pre-ceph/nodeset name=run_hook] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.058)       0:01:03.308 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.058)       0:01:03.307 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.067)       0:01:03.376 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.067)       0:01:03.375 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.063)       0:01:03.440 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.063)       0:01:03.439 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.037)       0:01:03.478 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.037)       0:01:03.477 ********** ",
                                "ok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=30m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.052)       0:01:03.530 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.052)       0:01:03.529 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.039)       0:01:03.570 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.039)       0:01:03.569 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.045)       0:01:03.615 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.045)       0:01:03.614 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.056)       0:01:03.672 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.056)       0:01:03.670 ********** ",
                                "ok: [localhost] => (item={'name': 'edpm-deployment-values', 'src_file': 'values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.293)       0:01:03.965 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.293)       0:01:03.964 ********** ",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci/edpm-pre-ceph/deployment name=run_hook] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.081)       0:01:04.047 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.081)       0:01:04.046 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci/edpm-pre-ceph/deployment name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:04.108 ********** ",
                                "Tuesday 09 June 2026  13:06:05 +0000 (0:00:00.060)       0:01:04.106 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.108)       0:01:04.216 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.108)       0:01:04.215 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.043)       0:01:04.260 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.043)       0:01:04.259 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.064)       0:01:04.325 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.064)       0:01:04.323 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.067)       0:01:04.392 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.067)       0:01:04.391 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.249)       0:01:04.642 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.249)       0:01:04.641 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.088)       0:01:04.730 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.088)       0:01:04.729 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.251)       0:01:04.982 ********** ",
                                "Tuesday 09 June 2026  13:06:06 +0000 (0:00:00.251)       0:01:04.981 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.268)       0:01:05.251 ********** ",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.268)       0:01:05.249 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.048)       0:01:05.299 ********** ",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.048)       0:01:05.298 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.286)       0:01:05.586 ********** ",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.286)       0:01:05.584 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.079)       0:01:05.665 ********** ",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.079)       0:01:05.664 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.067)       0:01:05.733 ********** ",
                                "Tuesday 09 June 2026  13:06:07 +0000 (0:00:00.067)       0:01:05.732 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.393)       0:01:06.126 ********** ",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.393)       0:01:06.125 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.449)       0:01:06.576 ********** ",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.449)       0:01:06.574 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.435)       0:01:07.011 ********** ",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.435)       0:01:07.010 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.094)       0:01:07.106 ********** ",
                                "Tuesday 09 June 2026  13:06:08 +0000 (0:00:00.094)       0:01:07.105 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.051)       0:01:07.158 ********** ",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.051)       0:01:07.157 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.209)       0:01:07.367 ********** ",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.209)       0:01:07.366 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.050)       0:01:07.418 ********** ",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.050)       0:01:07.417 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.358)       0:01:07.777 ********** ",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.358)       0:01:07.775 ********** ",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.083)       0:01:07.860 ********** ",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.083)       0:01:07.858 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.217)       0:01:08.077 ********** ",
                                "Tuesday 09 June 2026  13:06:09 +0000 (0:00:00.217)       0:01:08.075 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci/edpm-pre-ceph/deployment mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:06:10 +0000 (0:00:00.450)       0:01:08.527 ********** ",
                                "Tuesday 09 June 2026  13:06:10 +0000 (0:00:00.450)       0:01:08.525 ********** ",
                                "changed: [localhost] => (item=edpm-deployment-values)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:10 +0000 (0:00:00.260)       0:01:08.787 ********** ",
                                "Tuesday 09 June 2026  13:06:10 +0000 (0:00:00.260)       0:01:08.786 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci/edpm-pre-ceph/deployment chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:06:10 +0000 (0:00:00.044)       0:01:08.832 ********** ",
                                "Tuesday 09 June 2026  13:06:10 +0000 (0:00:00.044)       0:01:08.830 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.362)       0:01:09.194 ********** ",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.362)       0:01:09.193 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/edpm-pre-ceph/deployment executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.543)       0:01:09.738 ********** ",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.543)       0:01:09.737 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.047)       0:01:09.786 ********** ",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.047)       0:01:09.785 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/edpm-pre-ceph/deployment remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.068)       0:01:09.854 ********** ",
                                "Tuesday 09 June 2026  13:06:11 +0000 (0:00:00.068)       0:01:09.853 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.301)       0:01:10.156 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.301)       0:01:10.155 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci/edpm-pre-ceph/deployment _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.074)       0:01:10.231 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.074)       0:01:10.230 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/edpm-pre-ceph/deployment _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.048)       0:01:10.280 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.048)       0:01:10.278 ********** ",
                                "skipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=30m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.073)       0:01:10.353 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.073)       0:01:10.352 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci/edpm-pre-ceph/deployment name=run_hook] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.060)       0:01:10.414 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.060)       0:01:10.412 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.053)       0:01:10.467 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.053)       0:01:10.465 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.046)       0:01:10.514 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.046)       0:01:10.512 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.553 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.552 ********** ",
                                "ok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.592 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.039)       0:01:10.591 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.036)       0:01:10.629 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.036)       0:01:10.627 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.037)       0:01:10.666 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.037)       0:01:10.664 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.069)       0:01:10.735 ********** ",
                                "Tuesday 09 June 2026  13:06:12 +0000 (0:00:00.069)       0:01:10.734 ********** ",
                                "ok: [localhost] => (item={'name': 'service-values', 'src_file': 'service-values.yaml'})",
                                "ok: [localhost] => (item={'name': 'edpm-nodeset-values-post-ceph', 'src_file': 'values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.521)       0:01:11.257 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.521)       0:01:11.255 ********** ",
                                "ok: [localhost] => (item=service-values.yaml)",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci name=run_hook] *************",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.096)       0:01:11.354 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.096)       0:01:11.352 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.067)       0:01:11.421 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.067)       0:01:11.419 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.143)       0:01:11.564 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.143)       0:01:11.563 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.048)       0:01:11.613 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.048)       0:01:11.611 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.066)       0:01:11.679 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.066)       0:01:11.678 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.059)       0:01:11.739 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.059)       0:01:11.737 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.254)       0:01:11.993 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.254)       0:01:11.992 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.053)       0:01:12.046 ********** ",
                                "Tuesday 09 June 2026  13:06:13 +0000 (0:00:00.053)       0:01:12.045 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.242)       0:01:12.289 ********** ",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.242)       0:01:12.287 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.241)       0:01:12.531 ********** ",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.241)       0:01:12.529 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.049)       0:01:12.581 ********** ",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.049)       0:01:12.579 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.183)       0:01:12.764 ********** ",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.183)       0:01:12.763 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.095)       0:01:12.860 ********** ",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.095)       0:01:12.859 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.070)       0:01:12.930 ********** ",
                                "Tuesday 09 June 2026  13:06:14 +0000 (0:00:00.070)       0:01:12.929 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:15 +0000 (0:00:00.518)       0:01:13.449 ********** ",
                                "Tuesday 09 June 2026  13:06:15 +0000 (0:00:00.518)       0:01:13.447 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:15 +0000 (0:00:00.409)       0:01:13.858 ********** ",
                                "Tuesday 09 June 2026  13:06:15 +0000 (0:00:00.409)       0:01:13.857 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.396)       0:01:14.255 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.396)       0:01:14.253 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.059)       0:01:14.315 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.059)       0:01:14.313 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.040)       0:01:14.355 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.040)       0:01:14.354 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.187)       0:01:14.542 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.187)       0:01:14.541 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.048)       0:01:14.591 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.048)       0:01:14.589 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/service-values/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.342)       0:01:14.933 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.342)       0:01:14.932 ********** ",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.095)       0:01:15.029 ********** ",
                                "Tuesday 09 June 2026  13:06:16 +0000 (0:00:00.095)       0:01:15.027 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:17 +0000 (0:00:00.313)       0:01:15.342 ********** ",
                                "Tuesday 09 June 2026  13:06:17 +0000 (0:00:00.313)       0:01:15.340 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.820)       0:01:16.162 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.820)       0:01:16.161 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.050)       0:01:16.213 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.050)       0:01:16.212 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.078)       0:01:16.291 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.078)       0:01:16.290 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.046)       0:01:16.337 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.046)       0:01:16.336 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.208)       0:01:16.546 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.208)       0:01:16.545 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.054)       0:01:16.601 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.054)       0:01:16.600 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.278)       0:01:16.879 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.278)       0:01:16.878 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.190)       0:01:17.070 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.190)       0:01:17.069 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.039)       0:01:17.110 ********** ",
                                "Tuesday 09 June 2026  13:06:18 +0000 (0:00:00.039)       0:01:17.108 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.196)       0:01:17.306 ********** ",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.196)       0:01:17.305 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.054)       0:01:17.360 ********** ",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.054)       0:01:17.359 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.051)       0:01:17.412 ********** ",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.051)       0:01:17.410 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.624)       0:01:18.036 ********** ",
                                "Tuesday 09 June 2026  13:06:19 +0000 (0:00:00.624)       0:01:18.035 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.386)       0:01:18.422 ********** ",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.386)       0:01:18.421 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.374)       0:01:18.797 ********** ",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.374)       0:01:18.795 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.068)       0:01:18.865 ********** ",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.068)       0:01:18.864 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.038)       0:01:18.904 ********** ",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.038)       0:01:18.903 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.185)       0:01:19.089 ********** ",
                                "Tuesday 09 June 2026  13:06:20 +0000 (0:00:00.185)       0:01:19.088 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.046)       0:01:19.136 ********** ",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.046)       0:01:19.135 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.353)       0:01:19.490 ********** ",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.353)       0:01:19.489 ********** ",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.098)       0:01:19.589 ********** ",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.098)       0:01:19.587 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.237)       0:01:19.826 ********** ",
                                "Tuesday 09 June 2026  13:06:21 +0000 (0:00:00.237)       0:01:19.825 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:06:22 +0000 (0:00:00.386)       0:01:20.212 ********** ",
                                "Tuesday 09 June 2026  13:06:22 +0000 (0:00:00.386)       0:01:20.211 ********** ",
                                "changed: [localhost] => (item=service-values)",
                                "changed: [localhost] => (item=edpm-nodeset-values-post-ceph)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:22 +0000 (0:00:00.446)       0:01:20.659 ********** ",
                                "Tuesday 09 June 2026  13:06:22 +0000 (0:00:00.446)       0:01:20.658 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:06:22 +0000 (0:00:00.073)       0:01:20.733 ********** ",
                                "Tuesday 09 June 2026  13:06:22 +0000 (0:00:00.073)       0:01:20.732 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:23 +0000 (0:00:01.024)       0:01:21.758 ********** ",
                                "Tuesday 09 June 2026  13:06:23 +0000 (0:00:01.024)       0:01:21.757 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.372)       0:01:22.130 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.372)       0:01:22.129 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.060)       0:01:22.191 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.060)       0:01:22.190 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.234 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.233 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.215)       0:01:22.450 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.215)       0:01:22.449 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.040)       0:01:22.491 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.040)       0:01:22.489 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.044)       0:01:22.535 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.044)       0:01:22.533 ********** ",
                                "skipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=SetupReady --timeout=10m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.045)       0:01:22.580 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.045)       0:01:22.579 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci name=run_hook] ************",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.042)       0:01:22.623 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.042)       0:01:22.621 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Assert mandatory bits are defined that=['stage is defined', 'stage_id is defined', \"stage['path'] is defined\", \"stage['wait_conditions'] is defined\", \"stage['wait_conditions'] | length > 0\", \"stage['values'] is defined\", \"stage['values'] | length > 0\", \"stage['build_output'] is defined\", \"stage['build_output'] | length > 0\"]] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.050)       0:01:22.673 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.050)       0:01:22.672 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [kustomize_deploy : Check custom wait conditions that=item is match(_pattern), msg=The following custom condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.717 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.716 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Check builtin wait conditions that=item is match(_pattern), msg=The following builtin condition is invalid: {{ item }}, quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.025)       0:01:22.743 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.025)       0:01:22.742 ********** ",
                                "ok: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=80m)",
                                "",
                                "TASK [kustomize_deploy : Check wait_conditions validation result msg=Review and correct the faulty wait_conditions listed above.] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.034)       0:01:22.777 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.034)       0:01:22.776 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Set stage_wait_conditions fact _wait_conditions={{ stage.wait_conditions + _custom_conditions }}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.028)       0:01:22.806 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.028)       0:01:22.804 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Generate OSDPD run suffix (once per play) _cifmw_kustomize_deploy_run_suffix={{",
                                "  cifmw_kustomize_deploy_osdpd_suffix | string",
                                "  if (cifmw_kustomize_deploy_osdpd_suffix | default('') | string | length > 0)",
                                "  else (lookup('pipe', 'date +%Y%m%d%H%M%S') | string)",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.037)       0:01:22.843 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.037)       0:01:22.842 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Ensure source files exists path={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "   stage['path'], item.src_file) | path_join",
                                "}}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.887 ********** ",
                                "Tuesday 09 June 2026  13:06:24 +0000 (0:00:00.043)       0:01:22.886 ********** ",
                                "ok: [localhost] => (item={'name': 'edpm-deployment-values-post-ceph', 'src_file': 'values.yaml'})",
                                "",
                                "TASK [kustomize_deploy : Assert source files exist that=['(item.stat is defined and item.stat.exists) or item.skipped'], quiet=True] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.284)       0:01:23.172 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.284)       0:01:23.171 ********** ",
                                "ok: [localhost] => (item=values.yaml)",
                                "",
                                "TASK [Executing pre_stage hooks for examples/va/hci/deployment name=run_hook] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.259 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.258 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Generate values.yaml for examples/va/hci/deployment name=ci_gen_kustomize_values] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.045)       0:01:23.304 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.045)       0:01:23.303 ********** ",
                                "",
                                "TASK [ci_gen_kustomize_values : Detect metal3 node for baremetal nodeset provisioning _raw_params=detect_metal3_node.yml] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.392 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.087)       0:01:23.390 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate snippets files _raw_params=generate_snippets.yml] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.039)       0:01:23.431 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.039)       0:01:23.430 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_snippets.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure needed parameter is properly set that=['cifmw_architecture_scenario is defined', 'cifmw_architecture_scenario is not none'], msg=cifmw_architecture_scenario must be provided.] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.059)       0:01:23.491 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.059)       0:01:23.490 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Stat original source file path={{ cifmw_ci_gen_kustomize_values_src_file }}, get_attributes=False, get_checksum=False, get_mime=False] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.042)       0:01:23.534 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.042)       0:01:23.533 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Assert source file exists that=['_src_stat.stat.exists'], msg={{ cifmw_ci_gen_kustomize_values_src_file }} doesn't exist.] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.223)       0:01:23.757 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.223)       0:01:23.756 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : Load original values file src={{ cifmw_ci_gen_kustomize_values_src_file }}] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.052)       0:01:23.810 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.052)       0:01:23.809 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Expose common data for future usage values_datatype={{ _datatype }}, snippet_datadir={{ _dest_dir }}, original_content={{ _config_map_content }}, _cifmw_gen_kustomize_values_extra_manifests={{",
                                "  _raw_manifests | reject('equalto', _config_map_content)",
                                "}}, _cifmw_gen_kustomize_values_base_cm_content={{",
                                "  _config_map_content |",
                                "  ansible.utils.remove_keys(",
                                "    target=_cifmw_gen_kustomize_values_reject_expressions,",
                                "    matching_parameter='regex')",
                                "}}, cacheable=False] ***",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.207)       0:01:24.017 ********** ",
                                "Tuesday 09 June 2026  13:06:25 +0000 (0:00:00.207)       0:01:24.016 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we get the needed data depending on the values type _raw_params={{ _tasks }}] ***",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.228)       0:01:24.246 ********** ",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.228)       0:01:24.244 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure output directory exists path={{ snippet_datadir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.055)       0:01:24.301 ********** ",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.055)       0:01:24.300 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate CI snippet backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '02_ci_data.yaml') | path_join",
                                "}}, src={{ _tmpl_check_path | first }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.264)       0:01:24.566 ********** ",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.264)       0:01:24.565 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate the base64 CI ConfigMap patches _base64_patch={{ _patches_tuple[0] }}, _cifmw_gen_kustomize_values_extra_manifests={{ _patches_tuple[1] }}] ***",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.095)       0:01:24.661 ********** ",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.095)       0:01:24.660 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push base64 CI patches backup=True, dest={{",
                                "  (snippet_datadir,",
                                "  '03_user_data_b64.yaml') | path_join",
                                "}}, content={{",
                                "  _base64_patch |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.076)       0:01:24.738 ********** ",
                                "Tuesday 09 June 2026  13:06:26 +0000 (0:00:00.076)       0:01:24.736 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Push user provided dataset backup=True, dest={{",
                                "  (snippet_datadir,",
                                "   '04_user_data.yaml') | path_join",
                                "}}, content={{",
                                "  cifmw_ci_gen_kustomize_values_userdata |",
                                "  default({}) |",
                                "  to_nice_yaml",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.379)       0:01:25.118 ********** ",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.379)       0:01:25.116 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Copy the base values.yaml backup=True, content={{ _cifmw_gen_kustomize_values_base_cm_content |to_nice_yaml }}, dest={{",
                                "  (",
                                "    snippet_datadir,",
                                "    cifmw_ci_gen_kustomize_values_original_cm_content_file_name",
                                "  ) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.394)       0:01:25.513 ********** ",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.395)       0:01:25.511 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Generate values file _raw_params=generate_values.yml] ***",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.418)       0:01:25.931 ********** ",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.418)       0:01:25.930 ********** ",
                                "included: /home/zuul/src/github.com/openstack-k8s-operators/ci-framework/roles/ci_gen_kustomize_values/tasks/generate_values.yml for localhost",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure we have needed parameter that=['values_datatype is defined', \"values_datatype != ''\"], msg=Please do not call this tasks file without calling the generate_snippet.yml first!] ***",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.066)       0:01:25.997 ********** ",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.066)       0:01:25.996 ********** ",
                                "ok: [localhost] => ",
                                "    changed: false",
                                "    msg: All assertions passed",
                                "",
                                "TASK [ci_gen_kustomize_values : List snippets paths={{ _dir_path }}, patterns=*.yml,*.yaml, excludes={{ cifmw_ci_gen_kustomize_values_original_cm_content_file_name }}, recurse=False] ***",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.049)       0:01:26.046 ********** ",
                                "Tuesday 09 June 2026  13:06:27 +0000 (0:00:00.049)       0:01:26.045 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure _content is empty _content={}] **********",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.278)       0:01:26.325 ********** ",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.278)       0:01:26.323 ********** ",
                                "ok: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Load various snippet files path={{ file.path }}] ***",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.080)       0:01:26.405 ********** ",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.080)       0:01:26.404 ********** ",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=/home/zuul/ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Combine snippets _content={{",
                                "  _content |",
                                "  default(_cifmw_gen_kustomize_values_base_cm_content, true) |",
                                "  combine(_parsed, recursive=true)",
                                "}}",
                                "] ***",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.527)       0:01:26.932 ********** ",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.527)       0:01:26.931 ********** ",
                                "ok: [localhost] => (item=03_user_data_b64.yaml)",
                                "ok: [localhost] => (item=04_user_data.yaml)",
                                "",
                                "TASK [ci_gen_kustomize_values : Ensure directories exist path={{ _destdir }}, state=directory, mode=0755] ***",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.126)       0:01:27.058 ********** ",
                                "Tuesday 09 June 2026  13:06:28 +0000 (0:00:00.126)       0:01:27.057 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [ci_gen_kustomize_values : Output values file backup=True, dest={{",
                                "  (_destdir,",
                                "  cifmw_ci_gen_kustomize_values_dest_filename) | path_join",
                                "}}, content={{",
                                "  (",
                                "    [ _content ] + _cifmw_gen_kustomize_values_extra_manifests",
                                "  ) | cifmw.general.to_nice_yaml_all",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:29 +0000 (0:00:00.254)       0:01:27.313 ********** ",
                                "Tuesday 09 June 2026  13:06:29 +0000 (0:00:00.254)       0:01:27.312 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Copy generated values for examples/va/hci/deployment mode=0644, backup=True, remote_src=True, src={{",
                                "  (cifmw_kustomize_deploy_basedir,",
                                "   'artifacts', 'ci_gen_kustomize_values',",
                                "   _val['name'], 'values.yaml') | path_join",
                                "}}, dest={{",
                                "  (cifmw_kustomize_deploy_architecture_repo_dest_dir,",
                                "  stage['path'], _val.src_file",
                                "  ) |",
                                "  path_join",
                                " }}] ***",
                                "Tuesday 09 June 2026  13:06:29 +0000 (0:00:00.435)       0:01:27.749 ********** ",
                                "Tuesday 09 June 2026  13:06:29 +0000 (0:00:00.435)       0:01:27.748 ********** ",
                                "changed: [localhost] => (item=edpm-deployment-values-post-ceph)",
                                "",
                                "TASK [kustomize_deploy : Stop before building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:29 +0000 (0:00:00.330)       0:01:28.079 ********** ",
                                "Tuesday 09 June 2026  13:06:29 +0000 (0:00:00.330)       0:01:28.078 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Build kustomized content for examples/va/hci/deployment chdir={{ _chdir }}, _raw_params=oc kustomize] ***",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.038)       0:01:28.118 ********** ",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.038)       0:01:28.116 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Output kustomize build in final file backup=True, dest={{ _output }}, content={{ _kustomize_output.stdout }}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.365)       0:01:28.483 ********** ",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.365)       0:01:28.482 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Uniquify OpenStackDataPlaneDeployment names in examples/va/hci/deployment executable=python3, _raw_params={{ role_path }}/files/uniquify_osdpd.py {{ _output | quote }} {{ _cifmw_kustomize_deploy_run_suffix | string | quote }}] ***",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.501)       0:01:28.985 ********** ",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.501)       0:01:28.984 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Update wait conditions with uniquified OSDPD names _wait_conditions={{",
                                "  _wait_conditions | map('regex_replace',",
                                "    '(?i)((?:openstackdataplanedeployment|osdpd)\\s+)(' + item.split(' -> ')[0] | trim + ')(\\s|$)',",
                                "    '\\1' + item.split(' -> ')[1] | trim + '\\3'",
                                "  ) | list",
                                "}}] ***",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.079)       0:01:29.065 ********** ",
                                "Tuesday 09 June 2026  13:06:30 +0000 (0:00:00.079)       0:01:29.064 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Store kustomized content in artifacts for examples/va/hci/deployment remote_src=True, src={{ _output }}, dest={{",
                                "  (cifmw_kustomize_deploy_kustomizations_dest_dir,",
                                "   stage['build_output'] | basename) | path_join",
                                "}}, mode=0644] ***",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.076)       0:01:29.141 ********** ",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.076)       0:01:29.140 ********** ",
                                "changed: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after building kustomization if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.261)       0:01:29.403 ********** ",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.261)       0:01:29.401 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Apply generated content for examples/va/hci/deployment _raw_params=oc apply -f {{ _cr }}] ***",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.055)       0:01:29.458 ********** ",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.055)       0:01:29.457 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Run Wait Conditions for examples/va/hci/deployment _raw_params=wait_condition.yml] ***",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.066)       0:01:29.525 ********** ",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.066)       0:01:29.524 ********** ",
                                "skipping: [localhost] => (item=oc -n openstack wait osdpns openstack-edpm --for condition=Ready --timeout=80m) ",
                                "skipping: [localhost]",
                                "",
                                "TASK [kustomize_deploy : Stop after applying CRs if requested msg=Failing on demand {{ cifmw_deploy_architecture_stopper }}] ***",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.124)       0:01:29.650 ********** ",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.124)       0:01:29.649 ********** ",
                                "skipping: [localhost]",
                                "",
                                "TASK [Executing post_stage hooks for examples/va/hci/deployment name=run_hook] ***",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.061)       0:01:29.712 ********** ",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.061)       0:01:29.710 ********** ",
                                "skipping: [localhost]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "localhost                  : ok=280  changed=76   unreachable=0    failed=0    skipped=115  rescued=0    ignored=0   ",
                                "",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.094)       0:01:29.807 ********** ",
                                "=============================================================================== ",
                                "Get automation contents ------------------------------------------------- 7.80s",
                                "ci_setup : Install needed packages -------------------------------------- 4.24s",
                                "ci_setup : Install openshift client ------------------------------------- 3.92s",
                                "Load automation files as fact ------------------------------------------- 1.96s",
                                "ci_setup : Manage directories ------------------------------------------- 1.21s",
                                "kustomize_deploy : Build kustomized content for examples/va/hci --------- 1.02s",
                                "Gathering Facts --------------------------------------------------------- 0.92s",
                                "ci_gen_kustomize_values : Output values file ---------------------------- 0.82s",
                                "ci_gen_kustomize_values : Load various snippet files -------------------- 0.76s",
                                "Create needed SSH keypairs ---------------------------------------------- 0.69s",
                                "ci_gen_kustomize_values : Generate CI snippet --------------------------- 0.68s",
                                "ci_gen_kustomize_values : Load various snippet files -------------------- 0.66s",
                                "ci_gen_kustomize_values : Push base64 CI patches ------------------------ 0.62s",
                                "kustomize_deploy : Copy generated values for examples/va/hci/control-plane --- 0.61s",
                                "ci_gen_kustomize_values : Load various snippet files -------------------- 0.61s",
                                "ci_gen_kustomize_values : Load various snippet files -------------------- 0.56s",
                                "ci_gen_kustomize_values : Generate CI snippet --------------------------- 0.56s",
                                "ci_gen_kustomize_values : Generate CI snippet --------------------------- 0.55s",
                                "ci_gen_kustomize_values : Generate CI snippet --------------------------- 0.55s",
                                "kustomize_deploy : Output kustomize build in final file ----------------- 0.54s",
                                "Tuesday 09 June 2026  13:06:31 +0000 (0:00:00.097)       0:01:29.808 ********** ",
                                "=============================================================================== ",
                                "ci_gen_kustomize_values ------------------------------------------------ 43.08s",
                                "kustomize_deploy ------------------------------------------------------- 21.65s",
                                "ci_setup --------------------------------------------------------------- 10.90s",
                                "ansible.builtin.slurp --------------------------------------------------- 8.64s",
                                "ansible.builtin.set_fact ------------------------------------------------ 2.06s",
                                "gather_facts ------------------------------------------------------------ 0.92s",
                                "networking_mapper ------------------------------------------------------- 0.69s",
                                "community.crypto.openssh_keypair ---------------------------------------- 0.69s",
                                "ansible.builtin.file ---------------------------------------------------- 0.36s",
                                "ansible.builtin.find ---------------------------------------------------- 0.25s",
                                "ansible.builtin.include_role -------------------------------------------- 0.22s",
                                "ansible.builtin.stat ---------------------------------------------------- 0.19s",
                                "ansible.builtin.assert -------------------------------------------------- 0.06s",
                                "ansible.builtin.copy ---------------------------------------------------- 0.03s",
                                "ansible.builtin.include_vars -------------------------------------------- 0.02s",
                                "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ",
                                "total ------------------------------------------------------------------ 89.77s"
                            ],
                            "zuul_log_id": "0a580a2a-001b-6388-2c9f-000000000005-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:31.924855Z",
                            "start": "2026-06-09T13:05:00.758266Z"
                        },
                        "id": "0a580a2a-001b-6388-2c9f-000000000005",
                        "name": "Run playbook"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/openstack-k8s-operators/ci-framework/ci/playbooks/collect-logs.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:06:33.191020Z",
                    "start": "2026-06-09T13:06:32.766562Z"
                },
                "id": "0a580a2a-001b-91f0-33a1-000000000002",
                "name": "Ensure ci-framework-data base directories exist on all nodes"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/ci-framework-data/logs"
                                },
                                "before": {
                                    "path": "/home/zuul/ci-framework-data/logs"
                                }
                            },
                            "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": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/ci-framework-data/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/ci-framework-data/logs",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:33.191020Z",
                            "start": "2026-06-09T13:06:32.779704Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000004",
                        "name": "Create ci-framework-data/logs directory if missing"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:06:44.563150Z",
                    "start": "2026-06-09T13:06:33.233525Z"
                },
                "id": "0a580a2a-001b-91f0-33a1-000000000005",
                "name": "Run ci/playbooks/collect-logs.yml"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.meta",
                            "msg": "end_host conditional evaluated to false, continuing execution for controller",
                            "skip_reason": "end_host conditional evaluated to False, continuing execution for controller",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:33.249738Z",
                            "start": "2026-06-09T13:06:33.239808Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000007",
                        "name": "Filter out host if needed"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.stat",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "/tmp/report.html"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:33.683529Z",
                            "start": "2026-06-09T13:06:33.253713Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000009",
                        "name": "Ensure file is present"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": false,
                            "false_condition": "molecule_report.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:34.235964Z",
                            "start": "2026-06-09T13:06:33.724425Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000000a",
                        "name": "Manage molecule report file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.stat",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "/home/zuul/ci-framework-data"
                                }
                            },
                            "stat": {
                                "atime": 1781010297.2989655,
                                "attr_flags": "",
                                "attributes": [],
                                "block_size": 4096,
                                "blocks": 0,
                                "charset": "binary",
                                "ctime": 1781010313.543489,
                                "dev": 64513,
                                "device_type": 0,
                                "executable": true,
                                "exists": true,
                                "gid": 1000,
                                "gr_name": "zuul",
                                "inode": 33573290,
                                "isblk": false,
                                "ischr": false,
                                "isdir": true,
                                "isfifo": false,
                                "isgid": false,
                                "islnk": false,
                                "isreg": false,
                                "issock": false,
                                "isuid": false,
                                "mimetype": "inode/directory",
                                "mode": "0755",
                                "mtime": 1781010313.543489,
                                "nlink": 6,
                                "path": "/home/zuul/ci-framework-data",
                                "pw_name": "zuul",
                                "readable": true,
                                "rgrp": true,
                                "roth": true,
                                "rusr": true,
                                "size": 61,
                                "uid": 1000,
                                "version": "1899037817",
                                "wgrp": false,
                                "woth": false,
                                "writeable": true,
                                "wusr": true,
                                "xgrp": true,
                                "xoth": true,
                                "xusr": true
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:34.505986Z",
                            "start": "2026-06-09T13:06:34.246506Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000000b",
                        "name": "Check if we get ci-framework-data basedir"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/zuul-output/logs/ci-framework-data",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/home/zuul/zuul-output/logs/ci-framework-data",
                                    "state": "absent"
                                }
                            },
                            "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": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/zuul-output/logs/ci-framework-data",
                                    "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/ci-framework-data",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:34.765687Z",
                            "start": "2026-06-09T13:06:34.514996Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000000d",
                        "name": "Create ci-framework-data log directory for zuul"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "cmd": "cp -ra /home/zuul/ci-framework-data/logs . ;\ncp -ra /home/zuul/ci-framework-data/artifacts . ;\ncp -ra /home/zuul/ci-framework-data/tests . || true ;\n",
                            "delta": "0:00:00.032439",
                            "end": "2026-06-09 13:06:35.287402",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "cp -ra /home/zuul/ci-framework-data/logs . ;\ncp -ra /home/zuul/ci-framework-data/artifacts . ;\ncp -ra /home/zuul/ci-framework-data/tests . || true ;\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "/home/zuul/zuul-output/logs/ci-framework-data",
                                    "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": "0a580a2a-001b-91f0-33a1-00000000000e-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:06:35.254963",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "cp: cannot stat '/home/zuul/ci-framework-data/tests': No such file or directory",
                            "stdout_lines": [
                                "cp: cannot stat '/home/zuul/ci-framework-data/tests': No such file or directory"
                            ],
                            "zuul_log_id": "0a580a2a-001b-91f0-33a1-00000000000e-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:35.335212Z",
                            "start": "2026-06-09T13:06:34.811364Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000000e",
                        "name": "Copy ci-framework interesting files"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "cmd": "ls -lRZ --hide=venv --hide=repo-setup /home/zuul/ci-framework-data > ./selinux-listing.log;\n",
                            "delta": "0:00:00.009698",
                            "end": "2026-06-09 13:06:35.617200",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ls -lRZ --hide=venv --hide=repo-setup /home/zuul/ci-framework-data > ./selinux-listing.log;\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "/home/zuul/zuul-output/logs/",
                                    "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": "0a580a2a-001b-91f0-33a1-00000000000f-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:06:35.607502",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0a580a2a-001b-91f0-33a1-00000000000f-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:35.885715Z",
                            "start": "2026-06-09T13:06:35.372410Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000000f",
                        "name": "Get SELinux listing"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "88ae10a5acfbb988c7a4ebd7e6b4ce673fb5cdeb",
                            "dest": "/home/zuul/zuul-output/logs/README.html",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "important-logs.html",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "88ae10a5acfbb988c7a4ebd7e6b4ce673fb5cdeb",
                                    "content": null,
                                    "dest": "/home/zuul/zuul-output/logs/README.html",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010395.9786723-22-108054151359328/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "7f00c4ae41f3ba398cadcbbb8c625684",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 1590,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781010395.9786723-22-108054151359328/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:36.829554Z",
                            "start": "2026-06-09T13:06:35.894052Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000010",
                        "name": "Generate log index"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "cmd": "rpm -qa | sort > ./installed-pkgs.log;\npython --version > ./python.log;\npip3 --version >> ./python.log;\ncommand -v ansible && ansible --version >> ./python.log;\npip3 freeze >> ./python.log;\ndmesg -T > ./dmesg.log;\n",
                            "delta": "0:00:00.937211",
                            "end": "2026-06-09 13:06:38.040806",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "rpm -qa | sort > ./installed-pkgs.log;\npython --version > ./python.log;\npip3 --version >> ./python.log;\ncommand -v ansible && ansible --version >> ./python.log;\npip3 freeze >> ./python.log;\ndmesg -T > ./dmesg.log;\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "/home/zuul/zuul-output/logs/",
                                    "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": "0a580a2a-001b-91f0-33a1-000000000011-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:06:37.103595",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/home/zuul/.local/bin/ansible",
                            "stdout_lines": [
                                "/home/zuul/.local/bin/ansible"
                            ],
                            "zuul_log_id": "0a580a2a-001b-91f0-33a1-000000000011-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:38.457065Z",
                            "start": "2026-06-09T13:06:36.866727Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000011",
                        "name": "Get some env related data"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.find",
                            "changed": false,
                            "examined": 17,
                            "files": [
                                {
                                    "atime": 1781010273.2683961,
                                    "ctime": 1781010391.701144,
                                    "dev": 64513,
                                    "gid": 1000,
                                    "gr_name": "zuul",
                                    "inode": 300220,
                                    "isblk": false,
                                    "ischr": false,
                                    "isdir": false,
                                    "isfifo": false,
                                    "isgid": false,
                                    "islnk": false,
                                    "isreg": true,
                                    "issock": false,
                                    "isuid": false,
                                    "mode": "0644",
                                    "mtime": 1781010391.701144,
                                    "nlink": 1,
                                    "path": "/home/zuul/ansible.log",
                                    "pw_name": "zuul",
                                    "rgrp": true,
                                    "roth": true,
                                    "rusr": true,
                                    "size": 264557,
                                    "uid": 1000,
                                    "wgrp": false,
                                    "woth": false,
                                    "wusr": true,
                                    "xgrp": false,
                                    "xoth": false,
                                    "xusr": false
                                }
                            ],
                            "invocation": {
                                "module_args": {
                                    "age": null,
                                    "age_stamp": "mtime",
                                    "contains": null,
                                    "depth": null,
                                    "exact_mode": true,
                                    "excludes": null,
                                    "file_type": "file",
                                    "follow": false,
                                    "get_checksum": false,
                                    "hidden": false,
                                    "mode": null,
                                    "paths": [
                                        "/home/zuul"
                                    ],
                                    "patterns": [
                                        "*.log"
                                    ],
                                    "read_whole_file": false,
                                    "recurse": false,
                                    "size": null,
                                    "use_regex": false
                                }
                            },
                            "matched": 1,
                            "msg": "All paths examined",
                            "skipped_paths": {}
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:38.828293Z",
                            "start": "2026-06-09T13:06:38.464741Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000012",
                        "name": "Generate list of logs to collect in home directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "checksum": "4dacd395c4de120a24eba7151c8ae1ea37627084",
                                    "dest": "/home/zuul/zuul-output/logs/ansible.log",
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_original_basename": null,
                                            "attributes": null,
                                            "backup": false,
                                            "checksum": null,
                                            "content": null,
                                            "dest": "/home/zuul/zuul-output/logs/",
                                            "directory_mode": null,
                                            "follow": false,
                                            "force": true,
                                            "group": null,
                                            "local_follow": null,
                                            "mode": null,
                                            "owner": null,
                                            "remote_src": true,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": "/home/zuul/ansible.log",
                                            "unsafe_writes": false,
                                            "validate": null
                                        }
                                    },
                                    "item": {
                                        "atime": 1781010273.2683961,
                                        "ctime": 1781010391.701144,
                                        "dev": 64513,
                                        "gid": 1000,
                                        "gr_name": "zuul",
                                        "inode": 300220,
                                        "isblk": false,
                                        "ischr": false,
                                        "isdir": false,
                                        "isfifo": false,
                                        "isgid": false,
                                        "islnk": false,
                                        "isreg": true,
                                        "issock": false,
                                        "isuid": false,
                                        "mode": "0644",
                                        "mtime": 1781010391.701144,
                                        "nlink": 1,
                                        "path": "/home/zuul/ansible.log",
                                        "pw_name": "zuul",
                                        "rgrp": true,
                                        "roth": true,
                                        "rusr": true,
                                        "size": 264557,
                                        "uid": 1000,
                                        "wgrp": false,
                                        "woth": false,
                                        "wusr": true,
                                        "xgrp": false,
                                        "xoth": false,
                                        "xusr": false
                                    },
                                    "md5sum": "c66eb195cc72fe5c99e737cbe7734d35",
                                    "mode": "0644",
                                    "owner": "zuul",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 264557,
                                    "src": "/home/zuul/ansible.log",
                                    "state": "file",
                                    "uid": 1000
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:39.414083Z",
                            "start": "2026-06-09T13:06:38.836809Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000013",
                        "name": "Copy logs from home directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": false,
                            "false_condition": "cifmw_openshift_crio_stats | default(false)",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:39.457967Z",
                            "start": "2026-06-09T13:06:39.424670Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000014",
                        "name": "Copy crio stats log file"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "cmd": "ausearch -i | grep denied > ./selinux-denials.log\n",
                            "delta": "0:00:00.013076",
                            "end": "2026-06-09 13:06:39.835196",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ausearch -i | grep denied > ./selinux-denials.log\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "/home/zuul/zuul-output/logs/",
                                    "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": "0a580a2a-001b-91f0-33a1-000000000015-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-06-09 13:06:39.822120",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "<no matches>",
                            "stdout_lines": [
                                "<no matches>"
                            ],
                            "zuul_log_id": "0a580a2a-001b-91f0-33a1-000000000015-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:40.068915Z",
                            "start": "2026-06-09T13:06:39.550055Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000015",
                        "name": "Get SELinux related data"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/zuul-output/logs/system-config/libvirt",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/home/zuul/zuul-output/logs/system-config/libvirt",
                                    "state": "absent"
                                }
                            },
                            "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": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/zuul-output/logs/system-config/libvirt",
                                    "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/system-config/libvirt",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 6,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:40.354423Z",
                            "start": "2026-06-09T13:06:40.076468Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000016",
                        "name": "Create system configuration directory"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "cmd": "cp -r /etc/libvirt/*.conf libvirt/;\nchown -R \"zuul\" libvirt\nchown \"zuul\" *\ncp /etc/containers/registries.conf /home/zuul/zuul-output/logs/\ncp -r /etc/containers/registries.conf.d /home/zuul/zuul-output/logs/\nchown -R \"zuul\" /home/zuul/zuul-output/logs/registries.conf.d\n",
                            "delta": "0:00:00.018753",
                            "end": "2026-06-09 13:06:40.633541",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "cp -r /etc/libvirt/*.conf libvirt/;\nchown -R \"zuul\" libvirt\nchown \"zuul\" *\ncp /etc/containers/registries.conf /home/zuul/zuul-output/logs/\ncp -r /etc/containers/registries.conf.d /home/zuul/zuul-output/logs/\nchown -R \"zuul\" /home/zuul/zuul-output/logs/registries.conf.d\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "/home/zuul/zuul-output/logs/system-config",
                                    "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": "0a580a2a-001b-91f0-33a1-000000000017-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:06:40.614788",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0a580a2a-001b-91f0-33a1-000000000017-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:40.912790Z",
                            "start": "2026-06-09T13:06:40.391828Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000017",
                        "name": "Get some of the system configurations"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": false,
                            "false_condition": "doc_available | default(false) | bool",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:40.959028Z",
                            "start": "2026-06-09T13:06:40.920158Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000018",
                        "name": "Copy generated documentation if available"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": false,
                            "false_condition": "asciidoc_available | default(false) | bool",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:41.006730Z",
                            "start": "2026-06-09T13:06:40.968577Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000019",
                        "name": "Copy generated AsciiDoc documentation if available"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "cmd": "find \"/home/zuul/zuul-output/\" -type f ! -name \"*.gz\" ! -name \"*.xz\" -size +2M -exec gzip --best \"{}\" +\n",
                            "delta": "0:00:00.010064",
                            "end": "2026-06-09 13:06:41.286924",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "find \"/home/zuul/zuul-output/\" -type f ! -name \"*.gz\" ! -name \"*.xz\" -size +2M -exec gzip --best \"{}\" +\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": "0a580a2a-001b-91f0-33a1-00000000001a-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-09 13:06:41.276860",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0a580a2a-001b-91f0-33a1-00000000001a-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:41.564975Z",
                            "start": "2026-06-09T13:06:41.048266Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000001a",
                        "name": "Compress logs bigger than 2MB"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.include_role",
                            "changed": false,
                            "include_args": {
                                "name": "fetch-output"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:41.600907Z",
                            "start": "2026-06-09T13:06:41.572529Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000001b",
                        "name": "Copy files from workspace on node"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-91f0-33a1-000000000093",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted/project_2/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:41.670173Z",
                            "start": "2026-06-09T13:06:41.635568Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000095",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-91f0-33a1-000000000093",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted/project_2/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:41.718042Z",
                            "start": "2026-06-09T13:06:41.675993Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000096",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs"
                                        },
                                        "before": {
                                            "mode": "02755",
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "1000",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs",
                                    "size": 96,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "02755",
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "1000",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "02755",
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "1000",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-91f0-33a1-000000000093",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted/project_2/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:42.552270Z",
                            "start": "2026-06-09T13:06:41.723170Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000097",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@38.102.83.189:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n>f+++++++++ README.html\n>f+++++++++ ansible.log\n>f+++++++++ dmesg.log\n>f+++++++++ installed-pkgs.log\n>f+++++++++ python.log\n>f+++++++++ registries.conf\n>f+++++++++ selinux-denials.log\n>f+++++++++ selinux-listing.log\ncd+++++++++ ci-framework-data/\ncd+++++++++ ci-framework-data/artifacts/\n>f+++++++++ ci-framework-data/artifacts/ecdsa_deploy\n>f+++++++++ ci-framework-data/artifacts/ecdsa_deploy.pub\n>f+++++++++ ci-framework-data/artifacts/ecdsa_nova_migration\n>f+++++++++ ci-framework-data/artifacts/ecdsa_nova_migration.pub\n>f+++++++++ ci-framework-data/artifacts/zuul_inventory.yml\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values-post-ceph/\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values-post-ceph/values.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values/\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values/values.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values-post-ceph/\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values-post-ceph/values.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values/\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values/values.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/network-values/\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/network-values/values.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/service-values/\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/service-values/values.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/service-values/values.yaml.31582.2026-06-09@13:06:17~\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/01_original.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/03_user_data_b64.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/04_user_data.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/01_original.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/03_user_data_b64.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/04_user_data.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/01_original.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/03_user_data_b64.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/04_user_data.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/01_original.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/02_ci_data.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/03_user_data_b64.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/04_user_data.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/01_original.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/01_original.yaml.30451.2026-06-09@13:05:40~\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml\ncd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/01_original.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/01_original.yaml.31538.2026-06-09@13:06:16~\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/03_user_data_b64.yaml\n>f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/04_user_data.yaml\ncd+++++++++ ci-framework-data/artifacts/kustomize_deploy/\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/control-plane.yaml\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/deployment-post-ceph.yaml\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/deployment-pre-ceph.yaml\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/network.yaml\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/nncp.yaml\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/nodeset-post-ceph.yaml\n>f+++++++++ ci-framework-data/artifacts/kustomize_deploy/nodeset-pre-ceph.yaml\ncd+++++++++ ci-framework-data/artifacts/manifests/\ncd+++++++++ ci-framework-data/artifacts/manifests/openstack/\ncd+++++++++ ci-framework-data/artifacts/manifests/openstack/cr/\ncd+++++++++ ci-framework-data/artifacts/parameters/\n>f+++++++++ ci-framework-data/artifacts/parameters/zuul-params.yml\ncd+++++++++ ci-framework-data/logs/\ncd+++++++++ registries.conf.d/\n>f+++++++++ registries.conf.d/000-shortnames.conf\ncd+++++++++ system-config/\ncd+++++++++ system-config/libvirt/\n>f+++++++++ system-config/libvirt/libvirt-admin.conf\n>f+++++++++ system-config/libvirt/libvirt.conf\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./",
                                        ">f+++++++++ README.html",
                                        ">f+++++++++ ansible.log",
                                        ">f+++++++++ dmesg.log",
                                        ">f+++++++++ installed-pkgs.log",
                                        ">f+++++++++ python.log",
                                        ">f+++++++++ registries.conf",
                                        ">f+++++++++ selinux-denials.log",
                                        ">f+++++++++ selinux-listing.log",
                                        "cd+++++++++ ci-framework-data/",
                                        "cd+++++++++ ci-framework-data/artifacts/",
                                        ">f+++++++++ ci-framework-data/artifacts/ecdsa_deploy",
                                        ">f+++++++++ ci-framework-data/artifacts/ecdsa_deploy.pub",
                                        ">f+++++++++ ci-framework-data/artifacts/ecdsa_nova_migration",
                                        ">f+++++++++ ci-framework-data/artifacts/ecdsa_nova_migration.pub",
                                        ">f+++++++++ ci-framework-data/artifacts/zuul_inventory.yml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values-post-ceph/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values-post-ceph/values.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-deployment-values/values.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values-post-ceph/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values-post-ceph/values.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/edpm-nodeset-values/values.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/network-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/network-values/values.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/service-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/service-values/values.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_gen_kustomize_values/service-values/values.yaml.31582.2026-06-09@13:06:17~",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/01_original.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/03_user_data_b64.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values-post-ceph/04_user_data.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/01_original.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/03_user_data_b64.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-deployment-values/04_user_data.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/01_original.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/03_user_data_b64.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values-post-ceph/04_user_data.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/01_original.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/02_ci_data.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/03_user_data_b64.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/edpm-nodeset-values/04_user_data.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/01_original.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/01_original.yaml.30451.2026-06-09@13:05:40~",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/02_ci_data.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/03_user_data_b64.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/network-values/04_user_data.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/01_original.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/01_original.yaml.31538.2026-06-09@13:06:16~",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/03_user_data_b64.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/ci_k8s_snippets/service-values/04_user_data.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/kustomize_deploy/",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/control-plane.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/deployment-post-ceph.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/deployment-pre-ceph.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/network.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/nncp.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/nodeset-post-ceph.yaml",
                                        ">f+++++++++ ci-framework-data/artifacts/kustomize_deploy/nodeset-pre-ceph.yaml",
                                        "cd+++++++++ ci-framework-data/artifacts/manifests/",
                                        "cd+++++++++ ci-framework-data/artifacts/manifests/openstack/",
                                        "cd+++++++++ ci-framework-data/artifacts/manifests/openstack/cr/",
                                        "cd+++++++++ ci-framework-data/artifacts/parameters/",
                                        ">f+++++++++ ci-framework-data/artifacts/parameters/zuul-params.yml",
                                        "cd+++++++++ ci-framework-data/logs/",
                                        "cd+++++++++ registries.conf.d/",
                                        ">f+++++++++ registries.conf.d/000-shortnames.conf",
                                        "cd+++++++++ system-config/",
                                        "cd+++++++++ system-config/libvirt/",
                                        ">f+++++++++ system-config/libvirt/libvirt-admin.conf",
                                        ">f+++++++++ system-config/libvirt/libvirt.conf"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/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/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-91f0-33a1-000000000093",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/untrusted/project_2/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:44.490246Z",
                            "start": "2026-06-09T13:06:42.564237Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-000000000099",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_return",
                            "changed": false,
                            "false_condition": "molecule_report.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:44.563150Z",
                            "start": "2026-06-09T13:06:44.525064Z"
                        },
                        "id": "0a580a2a-001b-91f0-33a1-00000000001c",
                        "name": "Return artifact to Zuul"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "start": "2026-06-09T13:06:44.566682Z"
                },
                "id": "0a580a2a-001b-91f0-33a1-00000000001d",
                "name": "Run ci/playbooks/collect-logs.yml on CRC host"
            },
            "tasks": []
        }
    ],
    "stats": {
        "controller": {
            "changed": 12,
            "failures": 0,
            "ignored": 1,
            "ok": 17,
            "rescued": 0,
            "skipped": 6,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "master",
    "index": "1",
    "phase": "post",
    "playbook": "review.rdoproject.org/config/playbooks/base-minimal/post-ssh.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:06:49.700860Z",
                    "start": "2026-06-09T13:06:45.387997Z"
                },
                "id": "0a580a2a-001b-4bde-4dc6-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "fetch-output"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:45.437552Z",
                            "start": "2026-06-09T13:06:45.397970Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-000000000004",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-4bde-4dc6-000000000033",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:45.519742Z",
                            "start": "2026-06-09T13:06:45.452271Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-000000000035",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-4bde-4dc6-000000000033",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:45.576653Z",
                            "start": "2026-06-09T13:06:45.528721Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-000000000036",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "1000",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts"
                                        }
                                    },
                                    "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/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "1000",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs"
                                        }
                                    },
                                    "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/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "1000",
                                    "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                    "size": 6,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-4bde-4dc6-000000000033",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:46.705718Z",
                            "start": "2026-06-09T13:06:45.587549Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-000000000037",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": false,
                                    "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@38.102.83.189:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "stdout_lines": [],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs",
                                        "src": "logs"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": false,
                                    "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@38.102.83.189:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/home/zuul/zuul-output/artifacts/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "stdout_lines": [],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts",
                                        "src": "artifacts"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": false,
                                    "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@38.102.83.189:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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@38.102.83.189:/home/zuul/zuul-output/docs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "stdout_lines": [],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-4bde-4dc6-000000000033",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:48.722990Z",
                            "start": "2026-06-09T13:06:46.717786Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-000000000039",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_role",
                            "changed": false,
                            "false_condition": "ansible_connection == 'kubectl'",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:48.764346Z",
                            "start": "2026-06-09T13:06:48.737249Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-000000000006",
                        "name": ""
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts/* /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.014014",
                                    "end": "2026-06-09 13:06:49.298103",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/artifacts/* /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/artifacts\nfi\n",
                                            "_uses_shell": true,
                                            "argv": null,
                                            "chdir": null,
                                            "creates": null,
                                            "executable": null,
                                            "expand_argument_vars": true,
                                            "removes": null,
                                            "stdin": null,
                                            "stdin_add_newline": true,
                                            "strip_empty_ends": true,
                                            "zuul_ansible_split_streams": false,
                                            "zuul_log_id": "in-loop-ignore",
                                            "zuul_no_log": false,
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-06-09 13:06:49.284089",
                                    "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/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/docs/* /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.069077",
                                    "end": "2026-06-09 13:06:49.631406",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/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/3baddb9c77f44612873b572b5ad8a5f5/work/docs/* /var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/work/logs/docs\nfi\n",
                                            "_uses_shell": true,
                                            "argv": null,
                                            "chdir": null,
                                            "creates": null,
                                            "executable": null,
                                            "expand_argument_vars": true,
                                            "removes": null,
                                            "stdin": null,
                                            "stdin_add_newline": true,
                                            "strip_empty_ends": true,
                                            "zuul_ansible_split_streams": false,
                                            "zuul_log_id": "in-loop-ignore",
                                            "zuul_no_log": false,
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-06-09 13:06:49.562329",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0a580a2a-001b-4bde-4dc6-00000000000c",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:49.700860Z",
                            "start": "2026-06-09T13:06:48.773385Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-00000000000e",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-09T13:06:50.285585Z",
                    "start": "2026-06-09T13:06:49.719078Z"
                },
                "id": "0a580a2a-001b-4bde-4dc6-000000000015",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCZcRJLvWqhT1Gq1A3rkeR4MHytl/ulSurGvTkb1OOtgLHpx50/nMd6VoK0dV9NbGiBuySkVq+5JFPl2CLiVPz4bHBD5uDhf5bdqmHGqFR0wrxrsIwllonXKfp2Ch8IR00ApaOGPHmNzGv+xT1tIizxMu10xPszt5d3Apw23bj9oi/L9HCIzner+2nd0S5adYaQSnpigeZJGJqLhWTsYWiOijzv7bhqn+pZGbIgb+eGKauMV/jNa/Otvmt8itjcCPp/T+Bh2K5HG20yA3wL3nnB1WTSapXuSJZtxsskYOri5X/6Fhqb4DFuIAxrhU1zKLm1LlETWS87P0xIzMEbNHbRqcL4gd7hgzaRPWXAha2bEkmWJwQNAULlK5Fz96kmDfQ983Oo5hYGE1DR1mBZQ52u8ANY+9tr4ybTPfhSQzES4yHDufe2avLg5LJMDH1G/qBbuBhBPNQ1z5rmuWks820w7HdNiEGpG1JZ2L1cICq17y6w7bd1rdwBDCYwPRUMXLk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCZcRJLvWqhT1Gq1A3rkeR4MHytl/ulSurGvTkb1OOtgLHpx50/nMd6VoK0dV9NbGiBuySkVq+5JFPl2CLiVPz4bHBD5uDhf5bdqmHGqFR0wrxrsIwllonXKfp2Ch8IR00ApaOGPHmNzGv+xT1tIizxMu10xPszt5d3Apw23bj9oi/L9HCIzner+2nd0S5adYaQSnpigeZJGJqLhWTsYWiOijzv7bhqn+pZGbIgb+eGKauMV/jNa/Otvmt8itjcCPp/T+Bh2K5HG20yA3wL3nnB1WTSapXuSJZtxsskYOri5X/6Fhqb4DFuIAxrhU1zKLm1LlETWS87P0xIzMEbNHbRqcL4gd7hgzaRPWXAha2bEkmWJwQNAULlK5Fz96kmDfQ983Oo5hYGE1DR1mBZQ52u8ANY+9tr4ybTPfhSQzES4yHDufe2avLg5LJMDH1G/qBbuBhBPNQ1z5rmuWks820w7HdNiEGpG1JZ2L1cICq17y6w7bd1rdwBDCYwPRUMXLk= 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": "0a580a2a-001b-4bde-4dc6-000000000018",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/3baddb9c77f44612873b572b5ad8a5f5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-09T13:06:50.285585Z",
                            "start": "2026-06-09T13:06:49.730813Z"
                        },
                        "id": "0a580a2a-001b-4bde-4dc6-00000000001a",
                        "name": "Remove the build SSH key from all nodes"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 5,
            "rescued": 0,
            "skipped": 2,
            "unreachable": 0
        }
    },
    "trusted": true
}
]
