[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:35:35.451060Z",
                    "start": "2026-06-30T18:35:33.111633Z"
                },
                "id": "0242ac17-0010-8e7a-0a54-000000000002",
                "name": "localhost"
            },
            "tasks": [
                {
                    "hosts": {
                        "localhost": {
                            "action": "gather_facts",
                            "ansible_facts": {
                                "ansible_apparmor": {
                                    "status": "disabled"
                                },
                                "ansible_architecture": "x86_64",
                                "ansible_bios_date": "NA",
                                "ansible_bios_vendor": "NA",
                                "ansible_bios_version": "NA",
                                "ansible_board_asset_tag": "NA",
                                "ansible_board_name": "NA",
                                "ansible_board_serial": "NA",
                                "ansible_board_vendor": "NA",
                                "ansible_board_version": "NA",
                                "ansible_chassis_asset_tag": "NA",
                                "ansible_chassis_serial": "NA",
                                "ansible_chassis_vendor": "NA",
                                "ansible_chassis_version": "NA",
                                "ansible_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-5.15.0-130-generic",
                                    "console": "ttyS0",
                                    "ro": true,
                                    "root": "UUID=5a569d86-b935-46dd-ae79-7a72a25b6a4c"
                                },
                                "ansible_date_time": {
                                    "date": "2026-06-30",
                                    "day": "30",
                                    "epoch": "1782844533",
                                    "epoch_int": "1782844533",
                                    "hour": "18",
                                    "iso8601": "2026-06-30T18:35:33Z",
                                    "iso8601_basic": "20260630T183533654735",
                                    "iso8601_basic_short": "20260630T183533",
                                    "iso8601_micro": "2026-06-30T18:35:33.654735Z",
                                    "minute": "35",
                                    "month": "06",
                                    "second": "33",
                                    "time": "18:35:33",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "26",
                                    "year": "2026"
                                },
                                "ansible_devices": {},
                                "ansible_distribution": "Debian",
                                "ansible_distribution_major_version": "12",
                                "ansible_distribution_release": "bookworm",
                                "ansible_distribution_version": "12",
                                "ansible_dns": {
                                    "nameservers": [
                                        "127.0.0.11"
                                    ],
                                    "options": {
                                        "edns0": true,
                                        "ndots": "0",
                                        "trust-ad": true
                                    },
                                    "search": [
                                        "openstacklocal"
                                    ]
                                },
                                "ansible_domain": "",
                                "ansible_effective_group_id": 0,
                                "ansible_effective_user_id": 0,
                                "ansible_env": {
                                    "ANSIBLE_CONFIG": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work",
                                    "HOSTNAME": "2d72f0692154",
                                    "KUBECONFIG": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/kube/config",
                                    "LANG": "C.UTF-8",
                                    "PATH": "/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                                    "PWD": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base",
                                    "PYTHONPATH": "/var/lib/zuul/ansible/9",
                                    "PYTHON_SHA256": "8d3ed8ec5c88c1c95f5e558612a725450d2452813ddad5e58fdb1a53b1209b78",
                                    "PYTHON_VERSION": "3.11.14",
                                    "SSH_AGENT_PID": "4136537",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-oGHAQBGK87PP/agent.4136536",
                                    "TMP": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "2d72f0692154",
                                "ansible_hostname": "2d72f0692154",
                                "ansible_hostnqn": "",
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "5.15.0-130-generic",
                                "ansible_kernel_version": "#140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024",
                                "ansible_loadavg": {
                                    "15m": 3.68408203125,
                                    "1m": 3.66552734375,
                                    "5m": 3.3505859375
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 4731,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 14197,
                                        "used": 17893
                                    },
                                    "real": {
                                        "free": 4731,
                                        "total": 32090,
                                        "used": 27359
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/kube",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 101205167,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 162735550,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 41116221,
                                        "inode_total": 67108864,
                                        "inode_used": 25992643,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 414536364032,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 7746544,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32855036,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16150847,
                                        "inode_total": 20643840,
                                        "inode_used": 4492993,
                                        "mount": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 31729844224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "2d72f0692154",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-5.15.0-130-generic",
                                    "console": [
                                        "tty1",
                                        "ttyS0"
                                    ],
                                    "ro": true,
                                    "root": "UUID=5a569d86-b935-46dd-ae79-7a72a25b6a4c"
                                },
                                "ansible_processor": [
                                    "0",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "1",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "2",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "3",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "4",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "5",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "6",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "7",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "8",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "9",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "10",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "11",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "12",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "13",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "14",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "15",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 16,
                                "ansible_processor_nproc": 16,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 16,
                                "ansible_product_name": "NA",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "NA",
                                "ansible_python": {
                                    "executable": "/usr/local/lib/zuul/ansible/9/bin/python",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 14,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        14,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.14",
                                "ansible_real_group_id": 0,
                                "ansible_real_user_id": 0,
                                "ansible_selinux": {
                                    "status": "disabled"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "bwrap",
                                "ansible_swapfree_mb": 0,
                                "ansible_swaptotal_mb": 0,
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": "N/A",
                                "ansible_system_capabilities_enforced": "N/A",
                                "ansible_system_vendor": "NA",
                                "ansible_uptime_seconds": 46508263,
                                "ansible_user_dir": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work",
                                "ansible_user_gecos": "root",
                                "ansible_user_gid": 0,
                                "ansible_user_id": "root",
                                "ansible_user_shell": "/bin/bash",
                                "ansible_user_uid": 0,
                                "ansible_userspace_architecture": "x86_64",
                                "ansible_userspace_bits": "64",
                                "ansible_virtualization_role": "host",
                                "ansible_virtualization_tech_guest": [],
                                "ansible_virtualization_tech_host": [
                                    "kvm"
                                ],
                                "ansible_virtualization_type": "kvm",
                                "gather_subset": [
                                    "all"
                                ],
                                "module_setup": true
                            },
                            "changed": false,
                            "deprecations": [],
                            "warnings": []
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:33.972081Z",
                            "start": "2026-06-30T18:35:33.119996Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:33.997307Z",
                            "start": "2026-06-30T18:35:33.976523Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "e13/oss/e1384d86a54c47b9aba5a8c2983071e6"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:34.045173Z",
                            "start": "2026-06-30T18:35:34.012629Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.18\nJob: atmosphere-common-molecule-secretgen-controller\nPipeline: check\nExecutor: 2d72f0692154\nTriggered by: https://github.com/vexxhost/atmosphere.common/pull/102\nEvent ID: 58c0b120-74b2-11f1-99dc-9ca13722395a\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:34.097218Z",
                            "start": "2026-06-30T18:35:34.053513Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000009",
                        "name": "Print job information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": false,
                                    "failed": false,
                                    "msg": "# Node Information\nInventory Hostname: controller\nHostname: np0000183622\nUsername: zuul\nDistro: Ubuntu 24.04\nProvider: yul1\nRegion: ca-ymq-1\nLabel: ubuntu-noble\nProduct Name: OpenStack Nova\nInterface IP: 199.204.45.242\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:34.209816Z",
                            "start": "2026-06-30T18:35:34.101391Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/zuul-info",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:34.613279Z",
                            "start": "2026-06-30T18:35:34.220145Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "da57bcac1474e7962d9895440afeb2fd5b0ff966",
                            "dest": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "da57bcac1474e7962d9895440afeb2fd5b0ff966",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/.ansible/tmp/ansible-tmp-1782844534.655369-84-226221372664443/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "d6cc75780f78f878da3d08bbc404c18d",
                            "mode": "0644",
                            "owner": "root",
                            "size": 353135,
                            "src": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/.ansible/tmp/ansible-tmp-1782844534.655369-84-226221372664443/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:35.451060Z",
                            "start": "2026-06-30T18:35:34.621943Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:35:42.415404Z",
                    "start": "2026-06-30T18:35:35.461076Z"
                },
                "id": "0242ac17-0010-8e7a-0a54-000000000011",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "stat",
                            "changed": false,
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:35.691112Z",
                            "start": "2026-06-30T18:35:35.471230Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000018",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:35.739698Z",
                            "start": "2026-06-30T18:35:35.701329Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000019",
                        "name": "Create a new key in workspace based on build UUID"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-keygen",
                                "-t",
                                "rsa",
                                "-N",
                                "",
                                "-C",
                                "zuul-build-sshkey",
                                "-f",
                                "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.456380",
                            "end": "2026-06-30 18:35:36.575927",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa -b 3072",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-8e7a-0a54-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:35:36.119547",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa.pub\nThe key fingerprint is:\nSHA256:65fJGS9T0n0StP2+E6V2UsT6R/eM+klHb+OkdpMrhHU zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|               . |\n|              . o|\n|             . = |\n|             .+E*|\n|        S  .o..O*|\n|         .o.o.BoX|\n|        .. O.o.OB|\n|       .  O o++Oo|\n|        .. o.o=+=|\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:65fJGS9T0n0StP2+E6V2UsT6R/eM+klHb+OkdpMrhHU zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|               . |",
                                "|              . o|",
                                "|             . = |",
                                "|             .+E*|",
                                "|        S  .o..O*|",
                                "|         .o.o.BoX|",
                                "|        .. O.o.OB|",
                                "|       .  O o++Oo|",
                                "|        .. o.o=+=|",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-8e7a-0a54-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:36.622679Z",
                            "start": "2026-06-30T18:35:35.763610Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:36.664710Z",
                            "start": "2026-06-30T18:35:36.628704Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000009d",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:36.711536Z",
                            "start": "2026-06-30T18:35:36.685047Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000bc",
                        "name": "Remove previously added zuul-build-sshkey"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC0IIhkXpVlyFADeJ6BrRPxy4kfUNnb0uYUdPFERV152P/xA2UTYRR2oXgI9pA6LIpeY1d6AskrQO9Z4wtihAD+BcVF87yNgBDG6ZVSkc2fuZ1sVbCIZ9OGgLsqK4VZx35y7bqizHog2imWYBRl9jrMR9KTXZT+GSfW8h+h7c8UEBo290ll7TXW6SElYIELNgF8SQugpnpBfhLGAru+Fni1SrtHLnr5ZKdjs0231W3/Z1kqLV/d9MT01JbNx50T60hYoMKVE1vXKjwMlBaV279tIpy7sUJ8Dq6NoZzFG0S9Dfo3hz74YcYSeFuiDTsjeAxoSWY+C8XCO9Uhn3oD/wCll7rdZh+EEit+vgaqXD0bkr+5txvqM7V7jGd964opO2cVk3kk1sZ/O41cYYViY8OQuKr/+Nm964++THTDrlkCIZ+xL6vLUT3gRkHNLyKpHJgbgvy86m+c0Fb0S8I7aZn58cBiTbqlFHplXFQ4M6JyON95xCnPCV4bwnC4aJX3oOM= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQC0IIhkXpVlyFADeJ6BrRPxy4kfUNnb0uYUdPFERV152P/xA2UTYRR2oXgI9pA6LIpeY1d6AskrQO9Z4wtihAD+BcVF87yNgBDG6ZVSkc2fuZ1sVbCIZ9OGgLsqK4VZx35y7bqizHog2imWYBRl9jrMR9KTXZT+GSfW8h+h7c8UEBo290ll7TXW6SElYIELNgF8SQugpnpBfhLGAru+Fni1SrtHLnr5ZKdjs0231W3/Z1kqLV/d9MT01JbNx50T60hYoMKVE1vXKjwMlBaV279tIpy7sUJ8Dq6NoZzFG0S9Dfo3hz74YcYSeFuiDTsjeAxoSWY+C8XCO9Uhn3oD/wCll7rdZh+EEit+vgaqXD0bkr+5txvqM7V7jGd964opO2cVk3kk1sZ/O41cYYViY8OQuKr/+Nm964++THTDrlkCIZ+xL6vLUT3gRkHNLyKpHJgbgvy86m+c0Fb0S8I7aZn58cBiTbqlFHplXFQ4M6JyON95xCnPCV4bwnC4aJX3oOM= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "present",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:37.257977Z",
                            "start": "2026-06-30T18:35:36.721283Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000bd",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/.ssh"
                                },
                                "before": {
                                    "path": "/home/zuul/.ssh"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 448,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/.ssh",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0700",
                            "owner": "zuul",
                            "path": "/home/zuul/.ssh",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:37.492489Z",
                            "start": "2026-06-30T18:35:37.263759Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "364005a58268b7248de262518da980aa21aa3323",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "e1384d86a54c47b9aba5a8c2983071e6_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "364005a58268b7248de262518da980aa21aa3323",
                                    "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-1782844537.5426679-190-42649686450648/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "79d216897009f830e41169aec4ce6c2b",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1782844537.5426679-190-42649686450648/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:38.068343Z",
                            "start": "2026-06-30T18:35:37.498167Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "8086c247bb078ac4cda2908d53868af735c245ae",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "e1384d86a54c47b9aba5a8c2983071e6_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "8086c247bb078ac4cda2908d53868af735c245ae",
                                    "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-1782844538.1227412-200-240496753007901/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "a8901019566f0f9d8212fede74a17de1",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1782844538.1227412-200-240496753007901/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:38.640140Z",
                            "start": "2026-06-30T18:35:38.075715Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000c0",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:38.674383Z",
                            "start": "2026-06-30T18:35:38.647671Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000009e",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/etc/zuul/id_rsa"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:39.037164Z",
                            "start": "2026-06-30T18:35:38.685589Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa"
                            ],
                            "delta": "0:00:00.014027",
                            "end": "2026-06-30 18:35:39.299841",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-8e7a-0a54-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:35:39.285814",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/e1384d86a54c47b9aba5a8c2983071e6_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-8e7a-0a54-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:39.356659Z",
                            "start": "2026-06-30T18:35:39.054504Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:39.716380Z",
                            "start": "2026-06-30T18:35:39.364702Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000ac",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:39.750041Z",
                            "start": "2026-06-30T18:35:39.723859Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-0000000000ad",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:40.176337Z",
                            "start": "2026-06-30T18:35:39.764983Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000001d",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "censored": "the output has been hidden due to the fact that 'no_log: true' was specified for this result",
                            "changed": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:41.114129Z",
                            "start": "2026-06-30T18:35:40.183045Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-00000000001e",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/logs",
                                    "state": "absent",
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "state": "absent",
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/docs",
                                    "state": "absent",
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:41.782255Z",
                            "start": "2026-06-30T18:35:41.124290Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000022",
                        "name": "Empty Zuul Output directories by removing them"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-8e7a-0a54-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:42.415404Z",
                            "start": "2026-06-30T18:35:41.790625Z"
                        },
                        "id": "0242ac17-0010-8e7a-0a54-000000000024",
                        "name": "Ensure Zuul Output directories exist"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 8,
            "failures": 0,
            "ignored": 0,
            "ok": 15,
            "rescued": 0,
            "skipped": 3,
            "unreachable": 0
        },
        "localhost": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 6,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "1",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-jobs/playbooks/molecule/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:35:47.533940Z",
                    "start": "2026-06-30T18:35:43.194872Z"
                },
                "id": "0242ac17-0010-ad00-c35c-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.unarchive",
                            "changed": true,
                            "dest": "/usr/local/bin",
                            "extract_results": {
                                "cmd": [
                                    "/usr/bin/tar",
                                    "--extract",
                                    "-C",
                                    "/usr/local/bin",
                                    "-z",
                                    "--show-transformed-names",
                                    "--strip-components=1",
                                    "-f",
                                    "/home/zuul/.ansible/tmp/ansible-tmp-1782844543.2453053-5-204567360869128/uv-x86_64-unknown-linux-gnum9t4xnkz.tar.gz"
                                ],
                                "err": "",
                                "out": "",
                                "rc": 0
                            },
                            "gid": 0,
                            "group": "root",
                            "handler": "TgzArchive",
                            "invocation": {
                                "module_args": {
                                    "attributes": null,
                                    "copy": true,
                                    "creates": "/usr/local/bin/uv",
                                    "decrypt": true,
                                    "dest": "/usr/local/bin",
                                    "exclude": [],
                                    "extra_opts": [
                                        "--strip-components=1"
                                    ],
                                    "group": null,
                                    "include": [],
                                    "io_buffer_size": 65536,
                                    "keep_newer": false,
                                    "list_files": false,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": true,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "https://github.com/astral-sh/uv/releases/download/0.8.13/uv-x86_64-unknown-linux-gnu.tar.gz",
                                    "unsafe_writes": false,
                                    "validate_certs": true
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "size": 4096,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1782844543.2453053-5-204567360869128/uv-x86_64-unknown-linux-gnum9t4xnkz.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ad00-c35c-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:46.551013Z",
                            "start": "2026-06-30T18:35:43.205697Z"
                        },
                        "id": "0242ac17-0010-ad00-c35c-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.016075",
                            "end": "2026-06-30 18:35:46.652900",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/local/bin/uv --version",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-ad00-c35c-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:35:46.636825",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-ad00-c35c-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-ad00-c35c-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:47.099226Z",
                            "start": "2026-06-30T18:35:46.581607Z"
                        },
                        "id": "0242ac17-0010-ad00-c35c-000000000008",
                        "name": "Print version"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "molecule_install_galaxy_sibling_collections",
                            "changed": false,
                            "checkouts": [],
                            "installed": [],
                            "invocation": {
                                "module_args": {
                                    "build_refs": [
                                        {
                                            "branch": "main",
                                            "change": "102",
                                            "change_message": "chore(deps): update dependency fluxcd/flux2 to v2.9.0\n\n> \u2139\ufe0f **Note**\n> \n> This PR body was truncated due to platform limits.\n\nThis PR contains the following updates:\n\n| Package | Update | Change |\n|---|---|---|\n| [fluxcd/flux2](https://redirect.github.com/fluxcd/flux2) | minor | `2.6.4` \u2192 `2.9.0` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>fluxcd/flux2 (fluxcd/flux2)</summary>\n\n### [`v2.9.0`](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n### [`v2.8.8`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.8)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8)\n\n##### Highlights\n\nFlux v2.8.8 is a patch release that includes CVE fixes via go-git v5.19.1 (source-controller, image-automation-controller), reliability fixes in helm-controller and source-controller, the move of Helm back to upstream v4.2.0, support for GCP sovereign cloud artifact registries, and dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Add a configurable HTTP timeout for artifact fetching, preventing fetches that could block indefinitely and stall reconciliations (helm-controller)\n- Fix unbounded memory growth caused by a Kubernetes client transport retry wrapper accumulating on every reconcile (helm-controller)\n- Stop force-applying non-CRD objects placed under a chart's `crds/` directory (helm-controller)\n- Fix the Helm test action failing to find releases with names longer than 53 characters (helm-controller)\n- Improve path handling in the source reconcilers (source-controller)\n- Support Helm semver build-metadata encoding in OCIRepository tags (source-controller)\n\nImprovements:\n\n- Update go-git to v5.19.1 which fixes [CVE-2026-45571](https://redirect.github.com/advisories/GHSA-crhj-59gh-8x96) and [CVE-2026-45570](https://redirect.github.com/advisories/GHSA-m7cr-m3pv-hgrp) (source-controller, image-automation-controller)\n- Move Helm back to upstream v4.2.0 (source-controller, helm-controller)\n- Add support for GCP sovereign cloud artifact registries (source-controller, image-reflector-controller)\n- Upgrade Kubernetes to 1.36.1 (source-controller, helm-controller)\n- Update fluxcd/pkg dependencies\n\n##### Components changelog\n\n- helm-controller [v1.5.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.5/CHANGELOG.md)\n- image-automation-controller [v1.1.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.4/CHANGELOG.md)\n- image-reflector-controller [v1.1.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.2/CHANGELOG.md)\n- source-controller [v1.8.5](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.5/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5904](https://redirect.github.com/fluxcd/flux2/pull/5904)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8>\n\n### [`v2.8.7`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.7)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7)\n\n##### Highlights\n\nFlux v2.8.7 is a patch release that includes a bug fix in kustomize-controller, a CVE fix in source-controller and image-automation-controller via go-git v5.19.0, and dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix management of objects annotated with `kustomize.toolkit.fluxcd.io/ssa: IfNotPresent` where non-namespaced resources were being deleted and recreated on each reconciliation (kustomize-controller)\n\nImprovements:\n\n- Update go-git to v5.19.0 which fixes [CVE-2026-45022](https://redirect.github.com/advisories/GHSA-389r-gv7p-r3rp) (source-controller, image-automation-controller)\n- Update fluxcd/pkg dependencies (source-controller, kustomize-controller, image-automation-controller)\n\n##### Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n- image-automation-controller [v1.1.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.3/CHANGELOG.md)\n- kustomize-controller [v1.8.5](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.5/CHANGELOG.md)\n- notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n- source-controller [v1.8.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.4/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5891](https://redirect.github.com/fluxcd/flux2/pull/5891)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7>\n\n### [`v2.8.6`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.6)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6)\n\n##### Highlights\n\nFlux v2.8.6 is a patch release that includes bug fixes and improvements across helm-controller, image-automation-controller, kustomize-controller, notification-controller, and source-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix a post-renderer conflict between overlapping hooks and templates (helm-controller)\n- Ignore force replace when server-side apply is enabled (helm-controller)\n- Fix a regression where generic providers would not forward commit status events (notification-controller)\n- Require the `audience` field on the GCR Receiver secret for tighter verification \u2014 will become mandatory in Flux v2.9 (notification-controller)\n\nImprovements:\n\n- Introduce the `MigrateAPIVersion` feature gate for migrating the API version of resources in managed field entries (kustomize-controller)\n- Update go-git to v5.18.0 bringing performance improvements for Git operations (source-controller, image-automation-controller)\n\n##### Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n- image-automation-controller [v1.1.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.2/CHANGELOG.md)\n- kustomize-controller [v1.8.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.4/CHANGELOG.md)\n- notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n- source-controller [v1.8.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5857](https://redirect.github.com/fluxcd/flux2/pull/5857)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6>\n\n### [`v2.8.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.5)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5)\n\n##### Highlights\n\nFlux v2.8.5 is a patch release that includes bug fixes and improvements across kustomize-controller, source-controller, and notification-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix a race condition where a cancelled reconciliation could leave stale data in the cache, causing Kustomizations to get stuck (kustomize-controller)\n- Fix Azure Blob prefix option not being passed to the storage client (source-controller)\n\nImprovements:\n\n- Improve error message for encrypted SSH keys without password (source-controller)\n- Add optional `email` and `audience` fields to the GCR Receiver for tighter verification (notification-controller)\n- Add provider manifest example for Azure Event Hub managed identity authentication (notification-controller)\n\n##### Components changelog\n\n- kustomize-controller [v1.8.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.3/CHANGELOG.md)\n- source-controller [v1.8.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.2/CHANGELOG.md)\n- notification-controller [v1.8.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5822](https://redirect.github.com/fluxcd/flux2/pull/5822)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5>\n\n### [`v2.8.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.4)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4)\n\n##### Highlights\n\nFlux v2.8.4 is a patch release that includes fixes for the Flux CLI. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix `flux build ks` and `flux diff ks` on Windows\n- Fix `--source` flag validation in `create kustomization` command\n\n##### CLI changelog\n\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5796](https://redirect.github.com/fluxcd/flux2/pull/5796)\n- \\[release/v2.8.x] fix: validate --source flag in create kustomization command by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5799](https://redirect.github.com/fluxcd/flux2/pull/5799)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4>\n\n### [`v2.8.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.3)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3)\n\n##### Highlights\n\nFlux v2.8.3 is a patch release that fixes a regression in helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix templating errors for charts that include `---` in the content, e.g. YAML separators, embedded scripts, CAs inside ConfigMaps (helm-controller)\n\n##### Components changelog\n\n- helm-controller [v1.5.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.8.x] Add target branch name to update branch by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5774](https://redirect.github.com/fluxcd/flux2/pull/5774)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5779](https://redirect.github.com/fluxcd/flux2/pull/5779)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3>\n\n### [`v2.8.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.2)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2)\n\n##### Highlights\n\nFlux v2.8.2 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix enqueuing new reconciliation requests for events on source Flux objects when they are already reconciling the revision present in the watch event (kustomize-controller, helm-controller)\n- Fix the Go templates bug of YAML separator `---` getting concatenated to `apiVersion:` by updating to Helm 4.1.3 (helm-controller)\n- Fix canceled HelmReleases getting stuck when they don't have a retry strategy configured by introducing a new feature gate `DefaultToRetryOnFailure` that improves the experience when the `CancelHealthCheckOnNewRevision` is enabled (helm-controller)\n- Fix the auth scope for Azure Container Registry to use the ACR-specific scope (source-controller, image-reflector-controller)\n- Fix potential Denial of Service (DoS) during TLS handshakes (CVE-2026-27138) by building all controllers with Go 1.26.1\n\n##### Components changelog\n\n- source-controller [v1.8.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.1/CHANGELOG.md)\n- kustomize-controller [v1.8.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.2/CHANGELOG.md)\n- notification-controller [v1.8.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.2/CHANGELOG.md)\n- helm-controller [v1.5.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.2/CHANGELOG.md)\n- image-reflector-controller [v1.1.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.1/CHANGELOG.md)\n- image-automation-controller [v1.1.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.1/CHANGELOG.md)\n- source-watcher [v2.1.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.1/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.8.x] build(deps): bump the ci group across 1 directory with 11 updates by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5765](https://redirect.github.com/fluxcd/flux2/pull/5765)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5767](https://redirect.github.com/fluxcd/flux2/pull/5767)\n- Update toolkit components by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5770](https://redirect.github.com/fluxcd/flux2/pull/5770)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5771](https://redirect.github.com/fluxcd/flux2/pull/5771)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2>\n\n### [`v2.8.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.1)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1)\n\n##### Highlights\n\nFlux v2.8.1 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix Git commit status events being dropped for Kustomizations (notification-controller)\n- Fix health check for StatefulSets when the Pods are Pending/Unschedulable during rollout (helm-controller, kustomize-controller)\n\n##### Components changelog\n\n- kustomize-controller [v1.8.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.1/CHANGELOG.md)\n- notification-controller [v1.8.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.1/CHANGELOG.md)\n- helm-controller [v1.5.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.1/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.8.x] Remove no longer needed workaround for Flux 2.8 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5735](https://redirect.github.com/fluxcd/flux2/pull/5735)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5739](https://redirect.github.com/fluxcd/flux2/pull/5739)\n- \\[release/v2.8.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5741](https://redirect.github.com/fluxcd/flux2/pull/5741)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1>\n\n### [`v2.8.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.0)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.5...v2.8.0)\n\n##### Highlights\n\nFlux v2.8.0 is a feature release. Users are encouraged to upgrade for the best experience.\n\nFor a compressive overview of new features and API changes included in this release, please refer to the [Announcing Flux 2.8 GA blog post](https://fluxcd.io/blog/2026/02/flux-v2.8.0/).\n\nOverview of the new features:\n\n- Helm v4 support, including server-side apply and kstatus-based health checking (`HelmRelease`)\n- Readiness evaluation of Helm-managed objects with CEL expressions (`HelmRelease`)\n- Improved observability of Helm releases with inventory tracking in `.status.inventory` (`HelmRelease`)\n- Reduced the mean time to recovery of Flux-managed applications via `CancelHealthCheckOnNewRevision` feature gate (`Kustomization`, `HelmRelease`)\n- Support for commenting on Pull Requests directly from Flux notifications (`Provider`)\n- Custom SSA apply stages for ordering resource application in kustomize-controller (`Kustomization`)\n- Automatic GitHub App installation ID lookup from the repository owner (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n- Support for Cosign v3 for verifying OCI artifacts and container images (`OCIRepository`)\n- ArtifactGenerator support for extracting and modifying Helm charts (`ArtifactGenerator`)\n- Bypass cache when fetching source objects via `DirectSourceFetch` feature gate (`Kustomization`, `HelmRelease`, `ArtifactGenerator`)\n\n\u2764\ufe0f Big thanks to all the Flux contributors that helped us with this release!\n\n##### Kubernetes compatibility\n\nThis release is compatible with the following Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------ | ---------------- |\n| `v1.33`            | `>= 1.32.0`      |\n| `v1.34`            | `>= 1.34.1`      |\n| `v1.35`            | `>= 1.35.0`      |\n\n> \\[!NOTE]\n> Note that the Flux project offers support only for the latest three minor versions of Kubernetes.\n> Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/) that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux can be installed on Red Hat OpenShift cluster directly from OperatorHub using [Flux Operator](https://operatorhub.io/operator/flux-operator). The operator allows the configuration of Flux multi-tenancy lockdown, network policies, persistent storage, sharding, vertical scaling and the synchronization of the cluster state from Git repositories, OCI artifacts, and S3-compatible storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta2` and `v2beta2` (deprecated in 2024) have reached end-of-life and have been removed from the CRDs.\n\nPlease follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from older versions of Flux to v2.8.\n\n##### Components changelog\n\n- source-controller [v1.8.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.0/CHANGELOG.md)\n- kustomize-controller [v1.8.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.0/CHANGELOG.md)\n- notification-controller [v1.8.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.0/CHANGELOG.md)\n- helm-controller [v1.5.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.0/CHANGELOG.md)\n- image-reflector-controller [v1.1.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.0/CHANGELOG.md)\n- image-automation-controller [v1.1.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.0/CHANGELOG.md)\n- source-watcher [v2.1.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.0/CHANGELOG.md)\n\n##### CLI changelog\n\n- ci: Set `GITHUB_TOKEN` in the `release-flux-manifests` workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5547](https://redirect.github.com/fluxcd/flux2/pull/5547)\n- Add backport label for Flux 2.7 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5550](https://redirect.github.com/fluxcd/flux2/pull/5550)\n- build(deps): bump the ci group across 1 directory with 3 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5548](https://redirect.github.com/fluxcd/flux2/pull/5548)\n- Fix `flux push artifact` not working with `--provider` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5551](https://redirect.github.com/fluxcd/flux2/pull/5551)\n- Extend `flux migrate` to work with local files by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5554](https://redirect.github.com/fluxcd/flux2/pull/5554)\n- Improve `flux migrate` for live cluster migrations by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5558](https://redirect.github.com/fluxcd/flux2/pull/5558)\n- Fix `flux migrate -f` command to work with comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5560](https://redirect.github.com/fluxcd/flux2/pull/5560)\n- Add source-watcher to docs by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5562](https://redirect.github.com/fluxcd/flux2/pull/5562)\n- Fix `flux migrate -f` not considering kind comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5563](https://redirect.github.com/fluxcd/flux2/pull/5563)\n- refactor: convert `Kustomization` resource into unstructured map only once during variable substitution by [@&#8203;ramasai1](https://redirect.github.com/ramasai1) in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5568](https://redirect.github.com/fluxcd/flux2/pull/5568)\n- Disable AUR publishing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5570](https://redirect.github.com/fluxcd/flux2/pull/5570)\n- Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5574](https://redirect.github.com/fluxcd/flux2/pull/5574)\n- Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5576](https://redirect.github.com/fluxcd/flux2/pull/5576)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5578](https://redirect.github.com/fluxcd/flux2/pull/5578)\n- Restore GitHub PAT for backports by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5581](https://redirect.github.com/fluxcd/flux2/pull/5581)\n- \\[RFC-0012] Add command `flux get source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5555](https://redirect.github.com/fluxcd/flux2/pull/5555)\n- fix: handle error when writing password prompt to stdout by [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n- Pin cosign to v2.6.1 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5594](https://redirect.github.com/fluxcd/flux2/pull/5594)\n- \\[RFC-0012] Add command `flux export source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5583](https://redirect.github.com/fluxcd/flux2/pull/5583)\n- Fix bootstrap e2e test for image policy by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5604](https://redirect.github.com/fluxcd/flux2/pull/5604)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5603](https://redirect.github.com/fluxcd/flux2/pull/5603)\n- fix: return accepted values for flags when calling Values.Type() by [@&#8203;jaxels10](https://redirect.github.com/jaxels10) in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n- ci: Include source-watcher in the e2e test suite by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5614](https://redirect.github.com/fluxcd/flux2/pull/5614)\n- Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5627](https://redirect.github.com/fluxcd/flux2/pull/5627)\n- Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5630](https://redirect.github.com/fluxcd/flux2/pull/5630)\n- Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5633](https://redirect.github.com/fluxcd/flux2/pull/5633)\n- diff: report if object is skipped by [@&#8203;hown3d](https://redirect.github.com/hown3d) in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5639](https://redirect.github.com/fluxcd/flux2/pull/5639)\n- Allow option to skip tenant namespace creation by [@&#8203;anshuishere](https://redirect.github.com/anshuishere) in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5648](https://redirect.github.com/fluxcd/flux2/pull/5648)\n- fix: [#&#8203;5654](https://redirect.github.com/fluxcd/flux2/issues/5654) by checking if both --chart and --chart-ref are set by [@&#8203;jaxels10](https://redirect.github.com/jaxels10) in [#&#8203;5656](https://redirect.github.com/fluxcd/flux2/pull/5656)\n- Added retry logic with delays to the Flux CLI download by [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n- Run conformance tests for Kubernetes 1.35.0  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5663](https://redirect.github.com/fluxcd/flux2/pull/5663)\n- fix: normalize path for Windows compatibility by [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n- Introduce support for looking up GH app installation ID by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5682](https://redirect.github.com/fluxcd/flux2/pull/5682)\n- Update dependencies to Kubernetes v1.35.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5688](https://redirect.github.com/fluxcd/flux2/pull/5688)\n- Fix resume command logging success after reconciliation failure by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n- Add 2.8 to supported versions for `flux migrate -f` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5713](https://redirect.github.com/fluxcd/flux2/pull/5713)\n- Introduce workflow for bumping fluxcd/pkg deps by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5717](https://redirect.github.com/fluxcd/flux2/pull/5717)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5719](https://redirect.github.com/fluxcd/flux2/pull/5719)\n- Fix event listing ignoring pagination token by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5721](https://redirect.github.com/fluxcd/flux2/pull/5721)\n- Build with Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5723](https://redirect.github.com/fluxcd/flux2/pull/5723)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5722](https://redirect.github.com/fluxcd/flux2/pull/5722)\n- Update helm-controller to v1.5.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5725](https://redirect.github.com/fluxcd/flux2/pull/5725)\n- build(deps): bump the ci group across 1 directory with 12 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5720](https://redirect.github.com/fluxcd/flux2/pull/5720)\n- Fix bootstrap failure on Windows cross-drive paths by [@&#8203;veeceey](https://redirect.github.com/veeceey) in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n- Dump debug info on e2e tests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5729](https://redirect.github.com/fluxcd/flux2/pull/5729)\n- Set Kubernetes 1.33 as min supported version by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5730](https://redirect.github.com/fluxcd/flux2/pull/5730)\n- Update conformance tests to min Kubernetes 1.33 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5731](https://redirect.github.com/fluxcd/flux2/pull/5731)\n\n##### New Contributors\n\n- [@&#8203;ramasai1](https://redirect.github.com/ramasai1) made their first contribution in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n- [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) made their first contribution in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n- [@&#8203;jaxels10](https://redirect.github.com/jaxels10) made their first contribution in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n- [@&#8203;hown3d](https://redirect.github.com/hown3d) made their first contribution in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n- [@&#8203;anshuishere](https://redirect.github.com/anshuishere) made their first contribution in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n- [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) made their first contribution in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n- [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) made their first contribution in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n- [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) made their first contribution in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n- [@&#8203;veeceey](https://redirect.github.com/veeceey) made their first contribution in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.8.0>\n\n### [`v2.7.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.5)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5)\n\n##### Highlights\n\nFlux v2.7.5 is a patch release that comes with fixes to helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix HelmRelease history truncation when using the `RetryOnFailure` strategy.\n\n:warning: Note that signature verification for OCI artifacts in source-controller is not compatible with Cosign v3.\nFlux users are advised to use [Cosign v2.6](https://fluxcd.io/flux/flux-gh-action/#push-and-sign-kubernetes-manifests-to-container-registries) for signing Flux OCI artifacts and Helm charts, until support for Cosign v3 is added in Flux v2.8.\n\n##### Components changelog\n\n- helm-controller [v1.4.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.5/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5649](https://redirect.github.com/fluxcd/flux2/pull/5649)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5>\n\n### [`v2.7.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.4)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.3...v2.7.4)\n\n##### Highlights\n\nFlux v2.7.4 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f  Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Add `DisableConfigWatchers` feature gate to all controllers for disabling the Secrets/ConfigMaps watchers\n- Fix Workload Identity for Azure China Cloud in all controllers\n- Update Helm Go SDK to v3.19.2 fixing schema validation issues in helm-controller\n- Skip secret decryption for remote kustomize patches in kustomize-controller\n- Improve post-build error reporting in kustomize-controller\n- Add `ArtifactGenerator` to aggregated RBAC roles\n\n:warning: Note that signature verification for OCI artifacts in source-controller is not compatible with Cosign v3.\nFlux users are advised to use [Cosign v2.6](https://fluxcd.io/flux/flux-gh-action/#push-and-sign-kubernetes-manifests-to-container-registries) for signing Flux OCI artifacts and Helm charts, until support for Cosign v3 is added in Flux v2.8.\n\n##### Components changelog\n\n- source-controller [v1.7.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.4/CHANGELOG.md)\n- kustomize-controller [v1.7.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.3/CHANGELOG.md)\n- notification-controller [v1.7.5](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.5/CHANGELOG.md)\n- helm-controller [v1.4.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.4/CHANGELOG.md)\n- image-reflector-controller [v1.0.4](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.4/CHANGELOG.md)\n- image-automation-controller [v1.0.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.4/CHANGELOG.md)\n- source-watcher [v2.0.3](https://redirect.github.com/fluxcd/source-watcher/blob/v2.0.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] ci: Include source-watcher in the e2e test suite by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5615](https://redirect.github.com/fluxcd/flux2/pull/5615)\n- \\[release/v2.7.x] Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5628](https://redirect.github.com/fluxcd/flux2/pull/5628)\n- \\[release/v2.7.x] Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5631](https://redirect.github.com/fluxcd/flux2/pull/5631)\n- \\[release/v2.7.x] Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5634](https://redirect.github.com/fluxcd/flux2/pull/5634)\n- \\[release/v2.7.x] diff: report if object is skipped by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5635](https://redirect.github.com/fluxcd/flux2/pull/5635)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5640](https://redirect.github.com/fluxcd/flux2/pull/5640)\n- \\[release/v2.7.x] Allow option to skip tenant namespace creation by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5642](https://redirect.github.com/fluxcd/flux2/pull/5642)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.3...v2.7.4>\n\n### [`v2.7.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.3)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.2...v2.7.3)\n\n##### Highlights\n\nFlux v2.7.3 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Restore SOCKS5 proxy support in all controllers\n- Fix status reporting of HelmReleases with `RetryOnFailure` strategy\n- Automated retries for ImagePolicies when no image tags are found in the database\n- Fix alerting for Telegram's `message_thread_id`\n- Allow running kustomize-controller and helm-controller on the same loopback interface as source-watcher\n\n:warning: Note that signature verification for OCI artifacts in source-controller is not compatible with Cosign v3. Users are advised to use [Cosign v2.6](https://fluxcd.io/flux/flux-gh-action/#push-and-sign-kubernetes-manifests-to-container-registries) for signing Flux OCI artifacts and Helm charts, until support for Cosign v3 is added in Flux v2.8.\n\n##### Components changelog\n\n- source-controller [v1.7.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.3/CHANGELOG.md)\n- kustomize-controller [v1.7.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.2/CHANGELOG.md)\n- notification-controller [v1.7.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.4/CHANGELOG.md)\n- helm-controller [v1.4.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.3/CHANGELOG.md)\n- image-reflector-controller [v1.0.3](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.3/CHANGELOG.md)\n- image-automation-controller [v1.0.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Pin cosign to v2.6.1 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5595](https://redirect.github.com/fluxcd/flux2/pull/5595)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5605](https://redirect.github.com/fluxcd/flux2/pull/5605)\n- \\[release/v2.7.x] fix: return accepted values for flags when calling Values.Type() by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5606](https://redirect.github.com/fluxcd/flux2/pull/5606)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.2...v2.7.3>\n\n### [`v2.7.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.2)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.1...v2.7.2)\n\n##### Highlights\n\nFlux v2.7.2 is a patch release that comes with security fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nAll Flux components are now built with Go 1.25.2 which includes fixes for vulnerabilities in the Go stdlib that could lead to denial of service. The list of security fixes can be found in the [Go 1.25.2 release notes](https://groups.google.com/g/golang-announce/c/4Emdl2iQ_bI/m/qZN5nc-mBgAJ).\n\n##### Components changelog\n\n- source-controller [v1.7.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.2/CHANGELOG.md)\n- kustomize-controller [v1.7.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.1/CHANGELOG.md)\n- notification-controller [v1.7.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.3/CHANGELOG.md)\n- helm-controller [v1.4.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.2/CHANGELOG.md)\n- image-reflector-controller [v1.0.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.2/CHANGELOG.md)\n- image-automation-controller [v1.0.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.2/CHANGELOG.md)\n- source-watcher [v2.0.2](https://redirect.github.com/fluxcd/source-watcher/blob/v2.0.2/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5575](https://redirect.github.com/fluxcd/flux2/pull/5575)\n- \\[release/v2.7.x] Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5577](https://redirect.github.com/fluxcd/flux2/pull/5577)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5579](https://redirect.github.com/fluxcd/flux2/pull/5579)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.1...v2.7.2>\n\n### [`v2.7.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.1)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.0...v2.7.1)\n\n##### Highlights\n\nFlux v2.7.1 is a patch release that comes with various improvements and fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nImprovements:\n\n- Extend [flux migrate](https://fluxcd.io/flux/cmd/flux_migrate/) with support for migrating manifests in Git repositories to the latest API versions.\n- Add [recommendations](https://fluxcd.io/flux/components/helm/helmreleases/#recommended-settings) for configuring HelmReleases on production environments.\n\nFixes:\n\n- Fix `flux migrate` command to handle managed fields properly.\n- Fix self-signed TLS cert handling for public Helm repositories in source-controller.\n- Fix the default API versions used by receivers in notification-controller.\n- Fix redundant `Ready` condition patching in helm-controller.\n- Fix workload identity configuration examples for kubeconfig in helm-controller and kustomize-controller.\n\n##### Components changelog\n\n- source-controller [v1.7.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.1/CHANGELOG.md)\n- notification-controller [v1.7.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.2/CHANGELOG.md)\n- helm-controller [v1.4.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.1/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Backport CI fixes and updates by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5552](https://redirect.github.com/fluxcd/flux2/pull/5552)\n- \\[release/v2.7.x] Fix `flux push artifact` not working with `--provider` by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5553](https://redirect.github.com/fluxcd/flux2/pull/5553)\n- \\[release/v2.7.x] Extend `flux migrate` to work with local files by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5557](https://redirect.github.com/fluxcd/flux2/pull/5557)\n- \\[release/v2.7.x] Improve `flux migrate` for live cluster migrations by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5559](https://redirect.github.com/fluxcd/flux2/pull/5559)\n- \\[release/v2.7.x] Fix `flux migrate -f` command to work with comments by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5561](https://redirect.github.com/fluxcd/flux2/pull/5561)\n- \\[release/v2.7.x] Fix `flux migrate -f` not considering kind comments by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5564](https://redirect.github.com/fluxcd/flux2/pull/5564)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5569](https://redirect.github.com/fluxcd/flux2/pull/5569)\n- \\[release/v2.7.x] Disable AUR publishing by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5571](https://redirect.github.com/fluxcd/flux2/pull/5571)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.7.1>\n\n### [`v2.7.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.0)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.6.4...v2.7.0)\n\n##### Highlights\n\nFlux v2.7.0 is a feature release. Users are encouraged to upgrade for the best experience.\n\nFor a compressive overview of new features and API changes included in this release, please refer to the [Announcing Flux 2.7 GA blog post](https://fluxcd.io/blog/2025/09/flux-v2.7.0/).\n\nOverview of the new features:\n\n- General availability release of the Image Automation APIs (`ImagePolicy`, `ImageRepository`, `ImageUpdateAutomation`)\n- Watch for changes in ConfigMaps and Secrets references (`Kustomization`, `HelmRelease`)\n- Support for remote cluster authentication using Workload Identity (`Kustomization`, `HelmRelease`)\n- Extend the readiness evaluation of dependencies with CEL expressions (`Kustomization`, `HelmRelease`)\n- Support for global SOPS Age decryption keys on single-tenant clusters (`Kustomization`)\n- Support for optional Kustomize components (`Kustomization`)\n- Introduce `RetryOnFailure` lifecycle management strategy (`HelmRelease`)\n- Support mTLS for sending alerts to external systems (`Provider`)\n- Object-level workload identity authentication (`Bucket`, `Provider`)\n- Support mTLS for GitHub App transport (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n- OpenTelemetry tracing for `Kustomization` and `HelmRelease` reconciliation (`Provider`)\n- Support for 3rd-party source controllers (`ExternalArtifact`)\n- Support for source composition and decomposition patterns (`ArtifactGenerator`)\n- `CancelHealthCheckOnNewRevision` feature gate (kustomize-controller)\n- `GitSparseCheckout` feature gate (image-automation-controller)\n\n\u2764\ufe0f Big thanks to all the Flux contributors that helped us with this release!\n\n##### Kubernetes compatibility\n\nThis release is compatible with the following Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------ | ---------------- |\n| `v1.32`            | `>= 1.32.0`      |\n| `v1.33`            | `>= 1.33.0`      |\n| `v1.34`            | `>= 1.34.1`      |\n\n> \\[!NOTE]\n> Note that the Flux project offers support only for the latest three minor versions of Kubernetes.\n> Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/) that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux can be installed on Red Hat OpenShift cluster directly from OperatorHub using [Flux Operator](https://operatorhub.io/operator/flux-operator). The operator allows the configuration of Flux multi-tenancy lockdown, network policies, persistent storage, sharding, vertical scaling and the synchronization of the cluster state from Git repositories, OCI artifacts, and S3-compatible storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta1` and `v2beta1` (deprecated in 2023) have reached end-of-life and have been removed from the CRDs.\n\nUnless you are using [Flux Operator](https://redirect.github.com/controlplaneio-fluxcd/flux-operator) to deploy the Flux controllers, you must run the `flux migrate` command on clusters before upgrading.\n\nFor more details, please refer to the [Flux v2.7 upgrade guide](https://fluxcd.io/blog/2025/09/flux-v2.7.0/#upgrade-procedure).\n\n##### Components changelog\n\n- source-controller [v1.7.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.0/CHANGELOG.md)\n- kustomize-controller [v1.7.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.0/CHANGELOG.md)\n- notification-controller [v1.7.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.0/CHANGELOG.md) [v1.7.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.1/CHANGELOG.md)\n- helm-controller [v1.4.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.0/CHANGELOG.md)\n- image-reflector-controller [v1.0.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.0/CHANGELOG.md) [v1.0.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.1/CHANGELOG.md)\n- image-automation-controller [v1.0.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.0/CHANGELOG.md) [v1.0.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.1/CHANGELOG.md)\n- source-watcher [v2.0.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.0.0/CHANGELOG.md) [v2.0.1](https://redirect.github.com/fluxcd/source-watcher/blob/v1.0.1/CHANGELOG.md)\n\n##### New Documentation\n\n- [ImageRepository v1 specification](https://fluxcd.io/flux/components/image/imagerepositories)\n- [ImagePolicy v1 specification](https://fluxcd.io/flux/components/image/imagepolicies)\n- [ImageUpdateAutomation v1 specification](https://fluxcd.io/flux/components/image/imageupdateautomations)\n- [ExternalArtifact v1 specification](https://fluxcd.io/flux/components/source/externalartifacts)\n- [ArtifactGenerator v1beta1 specification](https://fluxcd.io/flux/components/source/artifactgenerators)\n\n##### CLI changelog\n\n- Add backport label for `v2.6.x` by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5379](https://redirect.github.com/fluxcd/flux2/pull/5379)\n- Update image-reflector-controller to v0.35.1 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5381](https://redirect.github.com/fluxcd/flux2/pull/5381)\n- Add digest pinning to image automation testing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5383](https://redirect.github.com/fluxcd/flux2/pull/5383)\n- correct small typo by [@&#8203;JIbald](https://redirect.github.com/JIbald) in [#&#8203;5388](https://redirect.github.com/fluxcd/flux2/pull/5388)\n- Remove credentials sync manifests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5347](https://redirect.github.com/fluxcd/flux2/pull/5347)\n- Add sparse checkout to cli by [@&#8203;ba-work](https://redirect.github.com/ba-work) in [#&#8203;5389](https://redirect.github.com/fluxcd/flux2/pull/5389)\n- fix: Allow Azure CLI calls in `flux push artifact --provider azure` on DevOps runners by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5390](https://redirect.github.com/fluxcd/flux2/pull/5390)\n- Fix `knownhosts key mismatch` regression bug by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5404](https://redirect.github.com/fluxcd/flux2/pull/5404)\n- refactor: Use `normalize.UnstructuredList` instead of `ssa.SetNativeKindsDefaults` by [@&#8203;cappyzawa](https://redirect.github.com/cappyzawa) in [#&#8203;5407](https://redirect.github.com/fluxcd/flux2/pull/5407)\n- Make service-account name configurable in `flux create tenant` by [@&#8203;reiSh6phoo9o](https://redirect.github.com/reiSh6phoo9o) in [#&#8203;5402](https://redirect.github.com/fluxcd/flux2/pull/5402)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5409](https://redirect.github.com/fluxcd/flux2/pull/5409)\n- refactor: cleanup GetArtifactRegistryCredentials error handling by [@&#8203;cappyzawa](https://redirect.github.com/cappyzawa) in [#&#8203;5418](https://redirect.github.com/fluxcd/flux2/pull/5418)\n- Promote image CLI commands to stable by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5421](https://redirect.github.com/fluxcd/flux2/pull/5421)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5426](https://redirect.github.com/fluxcd/flux2/pull/5426)\n- Bump pkg/ssa to v0.49.0 for CABundle validation fix by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5431](https://redirect.github.com/fluxcd/flux2/pull/5431)\n- \\[RFC-0010] Add workload identity support for remote clusters by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5434](https://redirect.github.com/fluxcd/flux2/pull/5434)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5443](https://redirect.github.com/fluxcd/flux2/pull/5443)\n- Fix `flux push artifact` for insecure registries by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5449](https://redirect.github.com/fluxcd/flux2/pull/5449)\n- \\[RFC-0010] Add workload identity support for remote generic clusters by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5452](https://redirect.github.com/fluxcd/flux2/pull/5452)\n- Fix `flux diff kustomization` ignore patterns by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5451](https://redirect.github.com/fluxcd/flux2/pull/5451)\n- Update dependencies to Kubernetes 1.33.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5453](https://redirect.github.com/fluxcd/flux2/pull/5453)\n- build(deps): bump the ci group across 1 directory with 7 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5435](https://redirect.github.com/fluxcd/flux2/pull/5435)\n- Upgrade fluxcd/pkg dependencies by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5455](https://redirect.github.com/fluxcd/flux2/pull/5455)\n- ci: Use GITHUB\\_TOKEN for API calls in update workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5460](https://redirect.github.com/fluxcd/flux2/pull/5460)\n- manifests: Add `app.kubernetes.io/part-of: flux` label to controller pods by [@&#8203;pinkavaj](https://redirect.github.com/pinkavaj) in [#&#8203;5440](https://redirect.github.com/fluxcd/flux2/pull/5440)\n- Migrate sourcesecret package to runtime/secrets APIs by [@&#8203;cappyzawa](https://redirect.github.com/cappyzawa) in [#&#8203;5462](https://redirect.github.com/fluxcd/flux2/pull/5462)\n- Implement `flux migrate` command by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5473](https://redirect.github.com/fluxcd/flux2/pull/5473)\n- \\[RFC-0007] Implementation history update by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5480](https://redirect.github.com/fluxcd/flux2/pull/5480)\n- Run conformance tests for Kubernetes 1.34.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5497](https://redirect.github.com/fluxcd/flux2/pull/5497)\n- Update to Kubernetes v1.34.0 and Go 1.25.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5499](https://redirect.github.com/fluxcd/flux2/pull/5499)\n- build(deps): bump the ci group across 1 directory with 10 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5500](https://redirect.github.com/fluxcd/flux2/pull/5500)\n- Allow the Go runtime to dynamically set `GOMAXPROCS` by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5501](https://redirect.github.com/fluxcd/flux2/pull/5501)\n- fix(events): respect `--all-namespaces` flag by [@&#8203;mohiuddin-khan-shiam](https://redirect.github.com/mohiuddin-khan-shiam) in [#&#8203;5414](https://redirect.github.com/fluxcd/flux2/pull/5414)\n- \\[RFC-0011] OpenTelemetry Tracing by [@&#8203;adri1197](https://redirect.github.com/adri1197) in [#&#8203;5321](https://redirect.github.com/fluxcd/flux2/pull/5321)\n- \\[RFC-0012] External Artifact API by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5292](https://redirect.github.com/fluxcd/flux2/pull/5292)\n- Add `--show-history` flag to `debug  helmrelease` by [@&#8203;hawkaii](https://redirect.github.com/hawkaii) in [#&#8203;5505](https://redirect.github.com/fluxcd/flux2/pull/5505)\n- Skip release candidates on updates by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5507](https://redirect.github.com/fluxcd/flux2/pull/5507)\n- ci: Align azure e2e tests secret names with fluxcd/pkg by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5508](https://redirect.github.com/fluxcd/flux2/pull/5508)\n- Update image-reflector-controller to v1.0.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5517](https://redirect.github.com/fluxcd/flux2/pull/5517)\n- Update source-controller to v1.7.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5518](https://redirect.github.com/fluxcd/flux2/pull/5518)\n- Add the source-watcher controller to the Flux distribution by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5519](https://redirect.github.com/fluxcd/flux2/pull/5519)\n- Add read-only commands for `ArtifactGenerator` kind by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5520](https://redirect.github.com/fluxcd/flux2/pull/5520)\n- ci: Add source-watcher to the update workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5521](https://redirect.github.com/fluxcd/flux2/pull/5521)\n- Update image-automation-controller to v1.0.0 by [@&#8203;fluxcdbot](https://redir\n\n> \u2702 **Note**\n> \n> PR body was truncated to here.\n\n\n</details>\n\n---\n\n### Configuration\n\n\ud83d\udcc5 **Schedule**: (UTC)\n\n- Branch creation\n  - At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule defined)\n\n\ud83d\udea6 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.\n\n\u267b **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.\n\n\ud83d\udd15 **Ignore**: Close this PR and you won't be reminded about this update again.\n\n---\n\n - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere.common).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQzLjI0Mi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->\n",
                                            "change_url": "https://github.com/vexxhost/atmosphere.common/pull/102",
                                            "commit_id": "185f328c541552f991b9f06d983b120c6d129243",
                                            "patchset": "185f328c541552f991b9f06d983b120c6d129243",
                                            "project": {
                                                "canonical_hostname": "github.com",
                                                "canonical_name": "github.com/vexxhost/atmosphere.common",
                                                "name": "vexxhost/atmosphere.common",
                                                "short_name": "atmosphere.common",
                                                "src_dir": "src/github.com/vexxhost/atmosphere.common"
                                            },
                                            "src_dir": "src/github.com/vexxhost/atmosphere.common",
                                            "topic": null
                                        },
                                        {
                                            "branch": "main",
                                            "change": "102",
                                            "change_message": "chore(deps): update dependency fluxcd/flux2 to v2.9.0\n\n> \u2139\ufe0f **Note**\n> \n> This PR body was truncated due to platform limits.\n\nThis PR contains the following updates:\n\n| Package | Update | Change |\n|---|---|---|\n| [fluxcd/flux2](https://redirect.github.com/fluxcd/flux2) | minor | `2.6.4` \u2192 `2.9.0` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>fluxcd/flux2 (fluxcd/flux2)</summary>\n\n### [`v2.9.0`](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n### [`v2.8.8`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.8)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8)\n\n##### Highlights\n\nFlux v2.8.8 is a patch release that includes CVE fixes via go-git v5.19.1 (source-controller, image-automation-controller), reliability fixes in helm-controller and source-controller, the move of Helm back to upstream v4.2.0, support for GCP sovereign cloud artifact registries, and dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Add a configurable HTTP timeout for artifact fetching, preventing fetches that could block indefinitely and stall reconciliations (helm-controller)\n- Fix unbounded memory growth caused by a Kubernetes client transport retry wrapper accumulating on every reconcile (helm-controller)\n- Stop force-applying non-CRD objects placed under a chart's `crds/` directory (helm-controller)\n- Fix the Helm test action failing to find releases with names longer than 53 characters (helm-controller)\n- Improve path handling in the source reconcilers (source-controller)\n- Support Helm semver build-metadata encoding in OCIRepository tags (source-controller)\n\nImprovements:\n\n- Update go-git to v5.19.1 which fixes [CVE-2026-45571](https://redirect.github.com/advisories/GHSA-crhj-59gh-8x96) and [CVE-2026-45570](https://redirect.github.com/advisories/GHSA-m7cr-m3pv-hgrp) (source-controller, image-automation-controller)\n- Move Helm back to upstream v4.2.0 (source-controller, helm-controller)\n- Add support for GCP sovereign cloud artifact registries (source-controller, image-reflector-controller)\n- Upgrade Kubernetes to 1.36.1 (source-controller, helm-controller)\n- Update fluxcd/pkg dependencies\n\n##### Components changelog\n\n- helm-controller [v1.5.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.5/CHANGELOG.md)\n- image-automation-controller [v1.1.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.4/CHANGELOG.md)\n- image-reflector-controller [v1.1.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.2/CHANGELOG.md)\n- source-controller [v1.8.5](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.5/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5904](https://redirect.github.com/fluxcd/flux2/pull/5904)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8>\n\n### [`v2.8.7`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.7)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7)\n\n##### Highlights\n\nFlux v2.8.7 is a patch release that includes a bug fix in kustomize-controller, a CVE fix in source-controller and image-automation-controller via go-git v5.19.0, and dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix management of objects annotated with `kustomize.toolkit.fluxcd.io/ssa: IfNotPresent` where non-namespaced resources were being deleted and recreated on each reconciliation (kustomize-controller)\n\nImprovements:\n\n- Update go-git to v5.19.0 which fixes [CVE-2026-45022](https://redirect.github.com/advisories/GHSA-389r-gv7p-r3rp) (source-controller, image-automation-controller)\n- Update fluxcd/pkg dependencies (source-controller, kustomize-controller, image-automation-controller)\n\n##### Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n- image-automation-controller [v1.1.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.3/CHANGELOG.md)\n- kustomize-controller [v1.8.5](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.5/CHANGELOG.md)\n- notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n- source-controller [v1.8.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.4/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5891](https://redirect.github.com/fluxcd/flux2/pull/5891)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7>\n\n### [`v2.8.6`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.6)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6)\n\n##### Highlights\n\nFlux v2.8.6 is a patch release that includes bug fixes and improvements across helm-controller, image-automation-controller, kustomize-controller, notification-controller, and source-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix a post-renderer conflict between overlapping hooks and templates (helm-controller)\n- Ignore force replace when server-side apply is enabled (helm-controller)\n- Fix a regression where generic providers would not forward commit status events (notification-controller)\n- Require the `audience` field on the GCR Receiver secret for tighter verification \u2014 will become mandatory in Flux v2.9 (notification-controller)\n\nImprovements:\n\n- Introduce the `MigrateAPIVersion` feature gate for migrating the API version of resources in managed field entries (kustomize-controller)\n- Update go-git to v5.18.0 bringing performance improvements for Git operations (source-controller, image-automation-controller)\n\n##### Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n- image-automation-controller [v1.1.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.2/CHANGELOG.md)\n- kustomize-controller [v1.8.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.4/CHANGELOG.md)\n- notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n- source-controller [v1.8.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5857](https://redirect.github.com/fluxcd/flux2/pull/5857)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6>\n\n### [`v2.8.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.5)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5)\n\n##### Highlights\n\nFlux v2.8.5 is a patch release that includes bug fixes and improvements across kustomize-controller, source-controller, and notification-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix a race condition where a cancelled reconciliation could leave stale data in the cache, causing Kustomizations to get stuck (kustomize-controller)\n- Fix Azure Blob prefix option not being passed to the storage client (source-controller)\n\nImprovements:\n\n- Improve error message for encrypted SSH keys without password (source-controller)\n- Add optional `email` and `audience` fields to the GCR Receiver for tighter verification (notification-controller)\n- Add provider manifest example for Azure Event Hub managed identity authentication (notification-controller)\n\n##### Components changelog\n\n- kustomize-controller [v1.8.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.3/CHANGELOG.md)\n- source-controller [v1.8.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.2/CHANGELOG.md)\n- notification-controller [v1.8.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5822](https://redirect.github.com/fluxcd/flux2/pull/5822)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5>\n\n### [`v2.8.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.4)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4)\n\n##### Highlights\n\nFlux v2.8.4 is a patch release that includes fixes for the Flux CLI. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix `flux build ks` and `flux diff ks` on Windows\n- Fix `--source` flag validation in `create kustomization` command\n\n##### CLI changelog\n\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5796](https://redirect.github.com/fluxcd/flux2/pull/5796)\n- \\[release/v2.8.x] fix: validate --source flag in create kustomization command by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5799](https://redirect.github.com/fluxcd/flux2/pull/5799)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4>\n\n### [`v2.8.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.3)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3)\n\n##### Highlights\n\nFlux v2.8.3 is a patch release that fixes a regression in helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix templating errors for charts that include `---` in the content, e.g. YAML separators, embedded scripts, CAs inside ConfigMaps (helm-controller)\n\n##### Components changelog\n\n- helm-controller [v1.5.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.8.x] Add target branch name to update branch by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5774](https://redirect.github.com/fluxcd/flux2/pull/5774)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5779](https://redirect.github.com/fluxcd/flux2/pull/5779)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3>\n\n### [`v2.8.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.2)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2)\n\n##### Highlights\n\nFlux v2.8.2 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix enqueuing new reconciliation requests for events on source Flux objects when they are already reconciling the revision present in the watch event (kustomize-controller, helm-controller)\n- Fix the Go templates bug of YAML separator `---` getting concatenated to `apiVersion:` by updating to Helm 4.1.3 (helm-controller)\n- Fix canceled HelmReleases getting stuck when they don't have a retry strategy configured by introducing a new feature gate `DefaultToRetryOnFailure` that improves the experience when the `CancelHealthCheckOnNewRevision` is enabled (helm-controller)\n- Fix the auth scope for Azure Container Registry to use the ACR-specific scope (source-controller, image-reflector-controller)\n- Fix potential Denial of Service (DoS) during TLS handshakes (CVE-2026-27138) by building all controllers with Go 1.26.1\n\n##### Components changelog\n\n- source-controller [v1.8.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.1/CHANGELOG.md)\n- kustomize-controller [v1.8.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.2/CHANGELOG.md)\n- notification-controller [v1.8.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.2/CHANGELOG.md)\n- helm-controller [v1.5.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.2/CHANGELOG.md)\n- image-reflector-controller [v1.1.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.1/CHANGELOG.md)\n- image-automation-controller [v1.1.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.1/CHANGELOG.md)\n- source-watcher [v2.1.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.1/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.8.x] build(deps): bump the ci group across 1 directory with 11 updates by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5765](https://redirect.github.com/fluxcd/flux2/pull/5765)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5767](https://redirect.github.com/fluxcd/flux2/pull/5767)\n- Update toolkit components by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5770](https://redirect.github.com/fluxcd/flux2/pull/5770)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5771](https://redirect.github.com/fluxcd/flux2/pull/5771)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2>\n\n### [`v2.8.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.1)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1)\n\n##### Highlights\n\nFlux v2.8.1 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix Git commit status events being dropped for Kustomizations (notification-controller)\n- Fix health check for StatefulSets when the Pods are Pending/Unschedulable during rollout (helm-controller, kustomize-controller)\n\n##### Components changelog\n\n- kustomize-controller [v1.8.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.1/CHANGELOG.md)\n- notification-controller [v1.8.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.1/CHANGELOG.md)\n- helm-controller [v1.5.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.1/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.8.x] Remove no longer needed workaround for Flux 2.8 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5735](https://redirect.github.com/fluxcd/flux2/pull/5735)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5739](https://redirect.github.com/fluxcd/flux2/pull/5739)\n- \\[release/v2.8.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5741](https://redirect.github.com/fluxcd/flux2/pull/5741)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1>\n\n### [`v2.8.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.0)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.5...v2.8.0)\n\n##### Highlights\n\nFlux v2.8.0 is a feature release. Users are encouraged to upgrade for the best experience.\n\nFor a compressive overview of new features and API changes included in this release, please refer to the [Announcing Flux 2.8 GA blog post](https://fluxcd.io/blog/2026/02/flux-v2.8.0/).\n\nOverview of the new features:\n\n- Helm v4 support, including server-side apply and kstatus-based health checking (`HelmRelease`)\n- Readiness evaluation of Helm-managed objects with CEL expressions (`HelmRelease`)\n- Improved observability of Helm releases with inventory tracking in `.status.inventory` (`HelmRelease`)\n- Reduced the mean time to recovery of Flux-managed applications via `CancelHealthCheckOnNewRevision` feature gate (`Kustomization`, `HelmRelease`)\n- Support for commenting on Pull Requests directly from Flux notifications (`Provider`)\n- Custom SSA apply stages for ordering resource application in kustomize-controller (`Kustomization`)\n- Automatic GitHub App installation ID lookup from the repository owner (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n- Support for Cosign v3 for verifying OCI artifacts and container images (`OCIRepository`)\n- ArtifactGenerator support for extracting and modifying Helm charts (`ArtifactGenerator`)\n- Bypass cache when fetching source objects via `DirectSourceFetch` feature gate (`Kustomization`, `HelmRelease`, `ArtifactGenerator`)\n\n\u2764\ufe0f Big thanks to all the Flux contributors that helped us with this release!\n\n##### Kubernetes compatibility\n\nThis release is compatible with the following Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------ | ---------------- |\n| `v1.33`            | `>= 1.32.0`      |\n| `v1.34`            | `>= 1.34.1`      |\n| `v1.35`            | `>= 1.35.0`      |\n\n> \\[!NOTE]\n> Note that the Flux project offers support only for the latest three minor versions of Kubernetes.\n> Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/) that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux can be installed on Red Hat OpenShift cluster directly from OperatorHub using [Flux Operator](https://operatorhub.io/operator/flux-operator). The operator allows the configuration of Flux multi-tenancy lockdown, network policies, persistent storage, sharding, vertical scaling and the synchronization of the cluster state from Git repositories, OCI artifacts, and S3-compatible storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta2` and `v2beta2` (deprecated in 2024) have reached end-of-life and have been removed from the CRDs.\n\nPlease follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from older versions of Flux to v2.8.\n\n##### Components changelog\n\n- source-controller [v1.8.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.0/CHANGELOG.md)\n- kustomize-controller [v1.8.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.0/CHANGELOG.md)\n- notification-controller [v1.8.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.0/CHANGELOG.md)\n- helm-controller [v1.5.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.0/CHANGELOG.md)\n- image-reflector-controller [v1.1.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.0/CHANGELOG.md)\n- image-automation-controller [v1.1.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.0/CHANGELOG.md)\n- source-watcher [v2.1.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.0/CHANGELOG.md)\n\n##### CLI changelog\n\n- ci: Set `GITHUB_TOKEN` in the `release-flux-manifests` workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5547](https://redirect.github.com/fluxcd/flux2/pull/5547)\n- Add backport label for Flux 2.7 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5550](https://redirect.github.com/fluxcd/flux2/pull/5550)\n- build(deps): bump the ci group across 1 directory with 3 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5548](https://redirect.github.com/fluxcd/flux2/pull/5548)\n- Fix `flux push artifact` not working with `--provider` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5551](https://redirect.github.com/fluxcd/flux2/pull/5551)\n- Extend `flux migrate` to work with local files by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5554](https://redirect.github.com/fluxcd/flux2/pull/5554)\n- Improve `flux migrate` for live cluster migrations by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5558](https://redirect.github.com/fluxcd/flux2/pull/5558)\n- Fix `flux migrate -f` command to work with comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5560](https://redirect.github.com/fluxcd/flux2/pull/5560)\n- Add source-watcher to docs by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5562](https://redirect.github.com/fluxcd/flux2/pull/5562)\n- Fix `flux migrate -f` not considering kind comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5563](https://redirect.github.com/fluxcd/flux2/pull/5563)\n- refactor: convert `Kustomization` resource into unstructured map only once during variable substitution by [@&#8203;ramasai1](https://redirect.github.com/ramasai1) in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5568](https://redirect.github.com/fluxcd/flux2/pull/5568)\n- Disable AUR publishing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5570](https://redirect.github.com/fluxcd/flux2/pull/5570)\n- Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5574](https://redirect.github.com/fluxcd/flux2/pull/5574)\n- Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5576](https://redirect.github.com/fluxcd/flux2/pull/5576)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5578](https://redirect.github.com/fluxcd/flux2/pull/5578)\n- Restore GitHub PAT for backports by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5581](https://redirect.github.com/fluxcd/flux2/pull/5581)\n- \\[RFC-0012] Add command `flux get source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5555](https://redirect.github.com/fluxcd/flux2/pull/5555)\n- fix: handle error when writing password prompt to stdout by [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n- Pin cosign to v2.6.1 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5594](https://redirect.github.com/fluxcd/flux2/pull/5594)\n- \\[RFC-0012] Add command `flux export source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5583](https://redirect.github.com/fluxcd/flux2/pull/5583)\n- Fix bootstrap e2e test for image policy by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5604](https://redirect.github.com/fluxcd/flux2/pull/5604)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5603](https://redirect.github.com/fluxcd/flux2/pull/5603)\n- fix: return accepted values for flags when calling Values.Type() by [@&#8203;jaxels10](https://redirect.github.com/jaxels10) in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n- ci: Include source-watcher in the e2e test suite by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5614](https://redirect.github.com/fluxcd/flux2/pull/5614)\n- Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5627](https://redirect.github.com/fluxcd/flux2/pull/5627)\n- Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5630](https://redirect.github.com/fluxcd/flux2/pull/5630)\n- Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5633](https://redirect.github.com/fluxcd/flux2/pull/5633)\n- diff: report if object is skipped by [@&#8203;hown3d](https://redirect.github.com/hown3d) in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5639](https://redirect.github.com/fluxcd/flux2/pull/5639)\n- Allow option to skip tenant namespace creation by [@&#8203;anshuishere](https://redirect.github.com/anshuishere) in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5648](https://redirect.github.com/fluxcd/flux2/pull/5648)\n- fix: [#&#8203;5654](https://redirect.github.com/fluxcd/flux2/issues/5654) by checking if both --chart and --chart-ref are set by [@&#8203;jaxels10](https://redirect.github.com/jaxels10) in [#&#8203;5656](https://redirect.github.com/fluxcd/flux2/pull/5656)\n- Added retry logic with delays to the Flux CLI download by [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n- Run conformance tests for Kubernetes 1.35.0  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5663](https://redirect.github.com/fluxcd/flux2/pull/5663)\n- fix: normalize path for Windows compatibility by [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n- Introduce support for looking up GH app installation ID by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5682](https://redirect.github.com/fluxcd/flux2/pull/5682)\n- Update dependencies to Kubernetes v1.35.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5688](https://redirect.github.com/fluxcd/flux2/pull/5688)\n- Fix resume command logging success after reconciliation failure by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n- Add 2.8 to supported versions for `flux migrate -f` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5713](https://redirect.github.com/fluxcd/flux2/pull/5713)\n- Introduce workflow for bumping fluxcd/pkg deps by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5717](https://redirect.github.com/fluxcd/flux2/pull/5717)\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5719](https://redirect.github.com/fluxcd/flux2/pull/5719)\n- Fix event listing ignoring pagination token by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5721](https://redirect.github.com/fluxcd/flux2/pull/5721)\n- Build with Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5723](https://redirect.github.com/fluxcd/flux2/pull/5723)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5722](https://redirect.github.com/fluxcd/flux2/pull/5722)\n- Update helm-controller to v1.5.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5725](https://redirect.github.com/fluxcd/flux2/pull/5725)\n- build(deps): bump the ci group across 1 directory with 12 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5720](https://redirect.github.com/fluxcd/flux2/pull/5720)\n- Fix bootstrap failure on Windows cross-drive paths by [@&#8203;veeceey](https://redirect.github.com/veeceey) in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n- Dump debug info on e2e tests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5729](https://redirect.github.com/fluxcd/flux2/pull/5729)\n- Set Kubernetes 1.33 as min supported version by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5730](https://redirect.github.com/fluxcd/flux2/pull/5730)\n- Update conformance tests to min Kubernetes 1.33 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5731](https://redirect.github.com/fluxcd/flux2/pull/5731)\n\n##### New Contributors\n\n- [@&#8203;ramasai1](https://redirect.github.com/ramasai1) made their first contribution in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n- [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) made their first contribution in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n- [@&#8203;jaxels10](https://redirect.github.com/jaxels10) made their first contribution in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n- [@&#8203;hown3d](https://redirect.github.com/hown3d) made their first contribution in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n- [@&#8203;anshuishere](https://redirect.github.com/anshuishere) made their first contribution in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n- [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) made their first contribution in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n- [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) made their first contribution in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n- [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) made their first contribution in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n- [@&#8203;veeceey](https://redirect.github.com/veeceey) made their first contribution in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.8.0>\n\n### [`v2.7.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.5)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5)\n\n##### Highlights\n\nFlux v2.7.5 is a patch release that comes with fixes to helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix HelmRelease history truncation when using the `RetryOnFailure` strategy.\n\n:warning: Note that signature verification for OCI artifacts in source-controller is not compatible with Cosign v3.\nFlux users are advised to use [Cosign v2.6](https://fluxcd.io/flux/flux-gh-action/#push-and-sign-kubernetes-manifests-to-container-registries) for signing Flux OCI artifacts and Helm charts, until support for Cosign v3 is added in Flux v2.8.\n\n##### Components changelog\n\n- helm-controller [v1.4.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.5/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5649](https://redirect.github.com/fluxcd/flux2/pull/5649)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5>\n\n### [`v2.7.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.4)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.3...v2.7.4)\n\n##### Highlights\n\nFlux v2.7.4 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f  Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Add `DisableConfigWatchers` feature gate to all controllers for disabling the Secrets/ConfigMaps watchers\n- Fix Workload Identity for Azure China Cloud in all controllers\n- Update Helm Go SDK to v3.19.2 fixing schema validation issues in helm-controller\n- Skip secret decryption for remote kustomize patches in kustomize-controller\n- Improve post-build error reporting in kustomize-controller\n- Add `ArtifactGenerator` to aggregated RBAC roles\n\n:warning: Note that signature verification for OCI artifacts in source-controller is not compatible with Cosign v3.\nFlux users are advised to use [Cosign v2.6](https://fluxcd.io/flux/flux-gh-action/#push-and-sign-kubernetes-manifests-to-container-registries) for signing Flux OCI artifacts and Helm charts, until support for Cosign v3 is added in Flux v2.8.\n\n##### Components changelog\n\n- source-controller [v1.7.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.4/CHANGELOG.md)\n- kustomize-controller [v1.7.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.3/CHANGELOG.md)\n- notification-controller [v1.7.5](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.5/CHANGELOG.md)\n- helm-controller [v1.4.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.4/CHANGELOG.md)\n- image-reflector-controller [v1.0.4](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.4/CHANGELOG.md)\n- image-automation-controller [v1.0.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.4/CHANGELOG.md)\n- source-watcher [v2.0.3](https://redirect.github.com/fluxcd/source-watcher/blob/v2.0.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] ci: Include source-watcher in the e2e test suite by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5615](https://redirect.github.com/fluxcd/flux2/pull/5615)\n- \\[release/v2.7.x] Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5628](https://redirect.github.com/fluxcd/flux2/pull/5628)\n- \\[release/v2.7.x] Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5631](https://redirect.github.com/fluxcd/flux2/pull/5631)\n- \\[release/v2.7.x] Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5634](https://redirect.github.com/fluxcd/flux2/pull/5634)\n- \\[release/v2.7.x] diff: report if object is skipped by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5635](https://redirect.github.com/fluxcd/flux2/pull/5635)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5640](https://redirect.github.com/fluxcd/flux2/pull/5640)\n- \\[release/v2.7.x] Allow option to skip tenant namespace creation by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5642](https://redirect.github.com/fluxcd/flux2/pull/5642)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.3...v2.7.4>\n\n### [`v2.7.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.3)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.2...v2.7.3)\n\n##### Highlights\n\nFlux v2.7.3 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Restore SOCKS5 proxy support in all controllers\n- Fix status reporting of HelmReleases with `RetryOnFailure` strategy\n- Automated retries for ImagePolicies when no image tags are found in the database\n- Fix alerting for Telegram's `message_thread_id`\n- Allow running kustomize-controller and helm-controller on the same loopback interface as source-watcher\n\n:warning: Note that signature verification for OCI artifacts in source-controller is not compatible with Cosign v3. Users are advised to use [Cosign v2.6](https://fluxcd.io/flux/flux-gh-action/#push-and-sign-kubernetes-manifests-to-container-registries) for signing Flux OCI artifacts and Helm charts, until support for Cosign v3 is added in Flux v2.8.\n\n##### Components changelog\n\n- source-controller [v1.7.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.3/CHANGELOG.md)\n- kustomize-controller [v1.7.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.2/CHANGELOG.md)\n- notification-controller [v1.7.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.4/CHANGELOG.md)\n- helm-controller [v1.4.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.3/CHANGELOG.md)\n- image-reflector-controller [v1.0.3](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.3/CHANGELOG.md)\n- image-automation-controller [v1.0.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.3/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Pin cosign to v2.6.1 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5595](https://redirect.github.com/fluxcd/flux2/pull/5595)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5605](https://redirect.github.com/fluxcd/flux2/pull/5605)\n- \\[release/v2.7.x] fix: return accepted values for flags when calling Values.Type() by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5606](https://redirect.github.com/fluxcd/flux2/pull/5606)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.2...v2.7.3>\n\n### [`v2.7.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.2)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.1...v2.7.2)\n\n##### Highlights\n\nFlux v2.7.2 is a patch release that comes with security fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nAll Flux components are now built with Go 1.25.2 which includes fixes for vulnerabilities in the Go stdlib that could lead to denial of service. The list of security fixes can be found in the [Go 1.25.2 release notes](https://groups.google.com/g/golang-announce/c/4Emdl2iQ_bI/m/qZN5nc-mBgAJ).\n\n##### Components changelog\n\n- source-controller [v1.7.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.2/CHANGELOG.md)\n- kustomize-controller [v1.7.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.1/CHANGELOG.md)\n- notification-controller [v1.7.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.3/CHANGELOG.md)\n- helm-controller [v1.4.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.2/CHANGELOG.md)\n- image-reflector-controller [v1.0.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.2/CHANGELOG.md)\n- image-automation-controller [v1.0.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.2/CHANGELOG.md)\n- source-watcher [v2.0.2](https://redirect.github.com/fluxcd/source-watcher/blob/v2.0.2/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5575](https://redirect.github.com/fluxcd/flux2/pull/5575)\n- \\[release/v2.7.x] Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5577](https://redirect.github.com/fluxcd/flux2/pull/5577)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5579](https://redirect.github.com/fluxcd/flux2/pull/5579)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.1...v2.7.2>\n\n### [`v2.7.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.1)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.0...v2.7.1)\n\n##### Highlights\n\nFlux v2.7.1 is a patch release that comes with various improvements and fixes. Users are encouraged to upgrade for the best experience.\n\n\u2139\ufe0f Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth upgrade from Flux v2.6 to the latest version.\n\nImprovements:\n\n- Extend [flux migrate](https://fluxcd.io/flux/cmd/flux_migrate/) with support for migrating manifests in Git repositories to the latest API versions.\n- Add [recommendations](https://fluxcd.io/flux/components/helm/helmreleases/#recommended-settings) for configuring HelmReleases on production environments.\n\nFixes:\n\n- Fix `flux migrate` command to handle managed fields properly.\n- Fix self-signed TLS cert handling for public Helm repositories in source-controller.\n- Fix the default API versions used by receivers in notification-controller.\n- Fix redundant `Ready` condition patching in helm-controller.\n- Fix workload identity configuration examples for kubeconfig in helm-controller and kustomize-controller.\n\n##### Components changelog\n\n- source-controller [v1.7.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.1/CHANGELOG.md)\n- notification-controller [v1.7.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.2/CHANGELOG.md)\n- helm-controller [v1.4.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.1/CHANGELOG.md)\n\n##### CLI changelog\n\n- \\[release/v2.7.x] Backport CI fixes and updates by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5552](https://redirect.github.com/fluxcd/flux2/pull/5552)\n- \\[release/v2.7.x] Fix `flux push artifact` not working with `--provider` by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5553](https://redirect.github.com/fluxcd/flux2/pull/5553)\n- \\[release/v2.7.x] Extend `flux migrate` to work with local files by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5557](https://redirect.github.com/fluxcd/flux2/pull/5557)\n- \\[release/v2.7.x] Improve `flux migrate` for live cluster migrations by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5559](https://redirect.github.com/fluxcd/flux2/pull/5559)\n- \\[release/v2.7.x] Fix `flux migrate -f` command to work with comments by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5561](https://redirect.github.com/fluxcd/flux2/pull/5561)\n- \\[release/v2.7.x] Fix `flux migrate -f` not considering kind comments by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5564](https://redirect.github.com/fluxcd/flux2/pull/5564)\n- \\[release/v2.7.x] Update toolkit components by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5569](https://redirect.github.com/fluxcd/flux2/pull/5569)\n- \\[release/v2.7.x] Disable AUR publishing by [@&#8203;github-actions](https://redirect.github.com/github-actions)\\[bot] in [#&#8203;5571](https://redirect.github.com/fluxcd/flux2/pull/5571)\n\n**Full Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.7.1>\n\n### [`v2.7.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.0)\n\n[Compare Source](https://redirect.github.com/fluxcd/flux2/compare/v2.6.4...v2.7.0)\n\n##### Highlights\n\nFlux v2.7.0 is a feature release. Users are encouraged to upgrade for the best experience.\n\nFor a compressive overview of new features and API changes included in this release, please refer to the [Announcing Flux 2.7 GA blog post](https://fluxcd.io/blog/2025/09/flux-v2.7.0/).\n\nOverview of the new features:\n\n- General availability release of the Image Automation APIs (`ImagePolicy`, `ImageRepository`, `ImageUpdateAutomation`)\n- Watch for changes in ConfigMaps and Secrets references (`Kustomization`, `HelmRelease`)\n- Support for remote cluster authentication using Workload Identity (`Kustomization`, `HelmRelease`)\n- Extend the readiness evaluation of dependencies with CEL expressions (`Kustomization`, `HelmRelease`)\n- Support for global SOPS Age decryption keys on single-tenant clusters (`Kustomization`)\n- Support for optional Kustomize components (`Kustomization`)\n- Introduce `RetryOnFailure` lifecycle management strategy (`HelmRelease`)\n- Support mTLS for sending alerts to external systems (`Provider`)\n- Object-level workload identity authentication (`Bucket`, `Provider`)\n- Support mTLS for GitHub App transport (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n- OpenTelemetry tracing for `Kustomization` and `HelmRelease` reconciliation (`Provider`)\n- Support for 3rd-party source controllers (`ExternalArtifact`)\n- Support for source composition and decomposition patterns (`ArtifactGenerator`)\n- `CancelHealthCheckOnNewRevision` feature gate (kustomize-controller)\n- `GitSparseCheckout` feature gate (image-automation-controller)\n\n\u2764\ufe0f Big thanks to all the Flux contributors that helped us with this release!\n\n##### Kubernetes compatibility\n\nThis release is compatible with the following Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------ | ---------------- |\n| `v1.32`            | `>= 1.32.0`      |\n| `v1.33`            | `>= 1.33.0`      |\n| `v1.34`            | `>= 1.34.1`      |\n\n> \\[!NOTE]\n> Note that the Flux project offers support only for the latest three minor versions of Kubernetes.\n> Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/) that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux can be installed on Red Hat OpenShift cluster directly from OperatorHub using [Flux Operator](https://operatorhub.io/operator/flux-operator). The operator allows the configuration of Flux multi-tenancy lockdown, network policies, persistent storage, sharding, vertical scaling and the synchronization of the cluster state from Git repositories, OCI artifacts, and S3-compatible storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta1` and `v2beta1` (deprecated in 2023) have reached end-of-life and have been removed from the CRDs.\n\nUnless you are using [Flux Operator](https://redirect.github.com/controlplaneio-fluxcd/flux-operator) to deploy the Flux controllers, you must run the `flux migrate` command on clusters before upgrading.\n\nFor more details, please refer to the [Flux v2.7 upgrade guide](https://fluxcd.io/blog/2025/09/flux-v2.7.0/#upgrade-procedure).\n\n##### Components changelog\n\n- source-controller [v1.7.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.7.0/CHANGELOG.md)\n- kustomize-controller [v1.7.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.7.0/CHANGELOG.md)\n- notification-controller [v1.7.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.0/CHANGELOG.md) [v1.7.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.7.1/CHANGELOG.md)\n- helm-controller [v1.4.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.4.0/CHANGELOG.md)\n- image-reflector-controller [v1.0.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.0/CHANGELOG.md) [v1.0.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.0.1/CHANGELOG.md)\n- image-automation-controller [v1.0.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.0/CHANGELOG.md) [v1.0.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.0.1/CHANGELOG.md)\n- source-watcher [v2.0.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.0.0/CHANGELOG.md) [v2.0.1](https://redirect.github.com/fluxcd/source-watcher/blob/v1.0.1/CHANGELOG.md)\n\n##### New Documentation\n\n- [ImageRepository v1 specification](https://fluxcd.io/flux/components/image/imagerepositories)\n- [ImagePolicy v1 specification](https://fluxcd.io/flux/components/image/imagepolicies)\n- [ImageUpdateAutomation v1 specification](https://fluxcd.io/flux/components/image/imageupdateautomations)\n- [ExternalArtifact v1 specification](https://fluxcd.io/flux/components/source/externalartifacts)\n- [ArtifactGenerator v1beta1 specification](https://fluxcd.io/flux/components/source/artifactgenerators)\n\n##### CLI changelog\n\n- Add backport label for `v2.6.x` by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5379](https://redirect.github.com/fluxcd/flux2/pull/5379)\n- Update image-reflector-controller to v0.35.1 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5381](https://redirect.github.com/fluxcd/flux2/pull/5381)\n- Add digest pinning to image automation testing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5383](https://redirect.github.com/fluxcd/flux2/pull/5383)\n- correct small typo by [@&#8203;JIbald](https://redirect.github.com/JIbald) in [#&#8203;5388](https://redirect.github.com/fluxcd/flux2/pull/5388)\n- Remove credentials sync manifests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5347](https://redirect.github.com/fluxcd/flux2/pull/5347)\n- Add sparse checkout to cli by [@&#8203;ba-work](https://redirect.github.com/ba-work) in [#&#8203;5389](https://redirect.github.com/fluxcd/flux2/pull/5389)\n- fix: Allow Azure CLI calls in `flux push artifact --provider azure` on DevOps runners by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5390](https://redirect.github.com/fluxcd/flux2/pull/5390)\n- Fix `knownhosts key mismatch` regression bug by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5404](https://redirect.github.com/fluxcd/flux2/pull/5404)\n- refactor: Use `normalize.UnstructuredList` instead of `ssa.SetNativeKindsDefaults` by [@&#8203;cappyzawa](https://redirect.github.com/cappyzawa) in [#&#8203;5407](https://redirect.github.com/fluxcd/flux2/pull/5407)\n- Make service-account name configurable in `flux create tenant` by [@&#8203;reiSh6phoo9o](https://redirect.github.com/reiSh6phoo9o) in [#&#8203;5402](https://redirect.github.com/fluxcd/flux2/pull/5402)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5409](https://redirect.github.com/fluxcd/flux2/pull/5409)\n- refactor: cleanup GetArtifactRegistryCredentials error handling by [@&#8203;cappyzawa](https://redirect.github.com/cappyzawa) in [#&#8203;5418](https://redirect.github.com/fluxcd/flux2/pull/5418)\n- Promote image CLI commands to stable by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5421](https://redirect.github.com/fluxcd/flux2/pull/5421)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5426](https://redirect.github.com/fluxcd/flux2/pull/5426)\n- Bump pkg/ssa to v0.49.0 for CABundle validation fix by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5431](https://redirect.github.com/fluxcd/flux2/pull/5431)\n- \\[RFC-0010] Add workload identity support for remote clusters by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5434](https://redirect.github.com/fluxcd/flux2/pull/5434)\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5443](https://redirect.github.com/fluxcd/flux2/pull/5443)\n- Fix `flux push artifact` for insecure registries by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5449](https://redirect.github.com/fluxcd/flux2/pull/5449)\n- \\[RFC-0010] Add workload identity support for remote generic clusters by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5452](https://redirect.github.com/fluxcd/flux2/pull/5452)\n- Fix `flux diff kustomization` ignore patterns by [@&#8203;dgunzy](https://redirect.github.com/dgunzy) in [#&#8203;5451](https://redirect.github.com/fluxcd/flux2/pull/5451)\n- Update dependencies to Kubernetes 1.33.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5453](https://redirect.github.com/fluxcd/flux2/pull/5453)\n- build(deps): bump the ci group across 1 directory with 7 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5435](https://redirect.github.com/fluxcd/flux2/pull/5435)\n- Upgrade fluxcd/pkg dependencies by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5455](https://redirect.github.com/fluxcd/flux2/pull/5455)\n- ci: Use GITHUB\\_TOKEN for API calls in update workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5460](https://redirect.github.com/fluxcd/flux2/pull/5460)\n- manifests: Add `app.kubernetes.io/part-of: flux` label to controller pods by [@&#8203;pinkavaj](https://redirect.github.com/pinkavaj) in [#&#8203;5440](https://redirect.github.com/fluxcd/flux2/pull/5440)\n- Migrate sourcesecret package to runtime/secrets APIs by [@&#8203;cappyzawa](https://redirect.github.com/cappyzawa) in [#&#8203;5462](https://redirect.github.com/fluxcd/flux2/pull/5462)\n- Implement `flux migrate` command by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5473](https://redirect.github.com/fluxcd/flux2/pull/5473)\n- \\[RFC-0007] Implementation history update by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5480](https://redirect.github.com/fluxcd/flux2/pull/5480)\n- Run conformance tests for Kubernetes 1.34.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5497](https://redirect.github.com/fluxcd/flux2/pull/5497)\n- Update to Kubernetes v1.34.0 and Go 1.25.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5499](https://redirect.github.com/fluxcd/flux2/pull/5499)\n- build(deps): bump the ci group across 1 directory with 10 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot] in [#&#8203;5500](https://redirect.github.com/fluxcd/flux2/pull/5500)\n- Allow the Go runtime to dynamically set `GOMAXPROCS` by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5501](https://redirect.github.com/fluxcd/flux2/pull/5501)\n- fix(events): respect `--all-namespaces` flag by [@&#8203;mohiuddin-khan-shiam](https://redirect.github.com/mohiuddin-khan-shiam) in [#&#8203;5414](https://redirect.github.com/fluxcd/flux2/pull/5414)\n- \\[RFC-0011] OpenTelemetry Tracing by [@&#8203;adri1197](https://redirect.github.com/adri1197) in [#&#8203;5321](https://redirect.github.com/fluxcd/flux2/pull/5321)\n- \\[RFC-0012] External Artifact API by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5292](https://redirect.github.com/fluxcd/flux2/pull/5292)\n- Add `--show-history` flag to `debug  helmrelease` by [@&#8203;hawkaii](https://redirect.github.com/hawkaii) in [#&#8203;5505](https://redirect.github.com/fluxcd/flux2/pull/5505)\n- Skip release candidates on updates by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5507](https://redirect.github.com/fluxcd/flux2/pull/5507)\n- ci: Align azure e2e tests secret names with fluxcd/pkg by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5508](https://redirect.github.com/fluxcd/flux2/pull/5508)\n- Update image-reflector-controller to v1.0.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5517](https://redirect.github.com/fluxcd/flux2/pull/5517)\n- Update source-controller to v1.7.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5518](https://redirect.github.com/fluxcd/flux2/pull/5518)\n- Add the source-watcher controller to the Flux distribution by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5519](https://redirect.github.com/fluxcd/flux2/pull/5519)\n- Add read-only commands for `ArtifactGenerator` kind by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5520](https://redirect.github.com/fluxcd/flux2/pull/5520)\n- ci: Add source-watcher to the update workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5521](https://redirect.github.com/fluxcd/flux2/pull/5521)\n- Update image-automation-controller to v1.0.0 by [@&#8203;fluxcdbot](https://redir\n\n> \u2702 **Note**\n> \n> PR body was truncated to here.\n\n\n</details>\n\n---\n\n### Configuration\n\n\ud83d\udcc5 **Schedule**: (UTC)\n\n- Branch creation\n  - At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule defined)\n\n\ud83d\udea6 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.\n\n\u267b **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.\n\n\ud83d\udd15 **Ignore**: Close this PR and you won't be reminded about this update again.\n\n---\n\n - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere.common).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQzLjI0Mi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->\n",
                                            "change_url": "https://github.com/vexxhost/atmosphere.common/pull/102",
                                            "commit_id": "185f328c541552f991b9f06d983b120c6d129243",
                                            "patchset": "185f328c541552f991b9f06d983b120c6d129243",
                                            "project": {
                                                "canonical_hostname": "github.com",
                                                "canonical_name": "github.com/vexxhost/atmosphere.common",
                                                "name": "vexxhost/atmosphere.common",
                                                "short_name": "atmosphere.common",
                                                "src_dir": "src/github.com/vexxhost/atmosphere.common"
                                            },
                                            "topic": null
                                        }
                                    ],
                                    "collections_path": "/home/zuul/.ansible/collections",
                                    "executable": "uv",
                                    "project_dir": "src/github.com/vexxhost/atmosphere.common",
                                    "projects": [
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/atmosphere.common",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "7d1903a7122f82c6f8d2dc72238ad934b065e83c",
                                            "name": "vexxhost/atmosphere.common",
                                            "required": false,
                                            "short_name": "atmosphere.common",
                                            "src_dir": "src/github.com/vexxhost/atmosphere.common"
                                        }
                                    ],
                                    "workspace_dir": "/home/zuul"
                                }
                            },
                            "log": [
                                "Skipping kubernetes.core: no checked-out sibling",
                                "Skipping openstack.cloud: no checked-out sibling",
                                "Skipping vexxhost.kubernetes: no checked-out sibling"
                            ],
                            "msg": "Skipping kubernetes.core: no checked-out sibling\nSkipping openstack.cloud: no checked-out sibling\nSkipping vexxhost.kubernetes: no checked-out sibling"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:47.533940Z",
                            "start": "2026-06-30T18:35:47.111304Z"
                        },
                        "id": "0242ac17-0010-ad00-c35c-00000000000a",
                        "name": "Install Ansible collection siblings"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "2",
    "phase": "pre",
    "playbook": "github.com/vexxhost/atmosphere.common/test-playbooks/molecule/pre.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:35:56.603215Z",
                    "start": "2026-06-30T18:35:48.246140Z"
                },
                "id": "0242ac17-0010-7775-6e20-000000000002",
                "name": "Prepare Molecule log collection"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.apt",
                            "cache_update_time": 1782844552,
                            "cache_updated": true,
                            "changed": true,
                            "diff": {},
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "name": "jq",
                                    "only_upgrade": false,
                                    "package": [
                                        "jq"
                                    ],
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": true,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            },
                            "stderr": "debconf: delaying package configuration, since apt-utils is not installed\n",
                            "stderr_lines": [
                                "debconf: delaying package configuration, since apt-utils is not installed"
                            ],
                            "stdout": "Reading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  libjq1 libonig5\nThe following NEW packages will be installed:\n  jq libjq1 libonig5\n0 upgraded, 3 newly installed, 0 to remove and 3 not upgraded.\nNeed to get 380 kB of archives.\nAfter this operation, 1127 kB of additional disk space will be used.\nGet:1 http://nova.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libonig5 amd64 6.9.9-1build1 [172 kB]\nGet:2 http://nova.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libjq1 amd64 1.7.1-3ubuntu0.24.04.2 [142 kB]\nGet:3 http://nova.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 jq amd64 1.7.1-3ubuntu0.24.04.2 [65.7 kB]\nFetched 380 kB in 1s (502 kB/s)\nSelecting previously unselected package libonig5:amd64.\r\n(Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 31282 files and directories currently installed.)\r\nPreparing to unpack .../libonig5_6.9.9-1build1_amd64.deb ...\r\nUnpacking libonig5:amd64 (6.9.9-1build1) ...\r\nSelecting previously unselected package libjq1:amd64.\r\nPreparing to unpack .../libjq1_1.7.1-3ubuntu0.24.04.2_amd64.deb ...\r\nUnpacking libjq1:amd64 (1.7.1-3ubuntu0.24.04.2) ...\r\nSelecting previously unselected package jq.\r\nPreparing to unpack .../jq_1.7.1-3ubuntu0.24.04.2_amd64.deb ...\r\nUnpacking jq (1.7.1-3ubuntu0.24.04.2) ...\r\nSetting up libonig5:amd64 (6.9.9-1build1) ...\r\nSetting up libjq1:amd64 (1.7.1-3ubuntu0.24.04.2) ...\r\nSetting up jq (1.7.1-3ubuntu0.24.04.2) ...\r\nProcessing triggers for libc-bin (2.39-0ubuntu8.7) ...\r\n",
                            "stdout_lines": [
                                "Reading package lists...",
                                "Building dependency tree...",
                                "Reading state information...",
                                "The following additional packages will be installed:",
                                "  libjq1 libonig5",
                                "The following NEW packages will be installed:",
                                "  jq libjq1 libonig5",
                                "0 upgraded, 3 newly installed, 0 to remove and 3 not upgraded.",
                                "Need to get 380 kB of archives.",
                                "After this operation, 1127 kB of additional disk space will be used.",
                                "Get:1 http://nova.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libonig5 amd64 6.9.9-1build1 [172 kB]",
                                "Get:2 http://nova.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libjq1 amd64 1.7.1-3ubuntu0.24.04.2 [142 kB]",
                                "Get:3 http://nova.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 jq amd64 1.7.1-3ubuntu0.24.04.2 [65.7 kB]",
                                "Fetched 380 kB in 1s (502 kB/s)",
                                "Selecting previously unselected package libonig5:amd64.",
                                "(Reading database ... ",
                                "(Reading database ... 5%",
                                "(Reading database ... 10%",
                                "(Reading database ... 15%",
                                "(Reading database ... 20%",
                                "(Reading database ... 25%",
                                "(Reading database ... 30%",
                                "(Reading database ... 35%",
                                "(Reading database ... 40%",
                                "(Reading database ... 45%",
                                "(Reading database ... 50%",
                                "(Reading database ... 55%",
                                "(Reading database ... 60%",
                                "(Reading database ... 65%",
                                "(Reading database ... 70%",
                                "(Reading database ... 75%",
                                "(Reading database ... 80%",
                                "(Reading database ... 85%",
                                "(Reading database ... 90%",
                                "(Reading database ... 95%",
                                "(Reading database ... 100%",
                                "(Reading database ... 31282 files and directories currently installed.)",
                                "Preparing to unpack .../libonig5_6.9.9-1build1_amd64.deb ...",
                                "Unpacking libonig5:amd64 (6.9.9-1build1) ...",
                                "Selecting previously unselected package libjq1:amd64.",
                                "Preparing to unpack .../libjq1_1.7.1-3ubuntu0.24.04.2_amd64.deb ...",
                                "Unpacking libjq1:amd64 (1.7.1-3ubuntu0.24.04.2) ...",
                                "Selecting previously unselected package jq.",
                                "Preparing to unpack .../jq_1.7.1-3ubuntu0.24.04.2_amd64.deb ...",
                                "Unpacking jq (1.7.1-3ubuntu0.24.04.2) ...",
                                "Setting up libonig5:amd64 (6.9.9-1build1) ...",
                                "Setting up libjq1:amd64 (1.7.1-3ubuntu0.24.04.2) ...",
                                "Setting up jq (1.7.1-3ubuntu0.24.04.2) ...",
                                "Processing triggers for libc-bin (2.39-0ubuntu8.7) ..."
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:56.603215Z",
                            "start": "2026-06-30T18:35:48.257479Z"
                        },
                        "id": "0242ac17-0010-7775-6e20-000000000004",
                        "name": "Install jq for log collection"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "run",
    "playbook": "github.com/vexxhost/zuul-jobs/playbooks/molecule/run.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:40:07.033762Z",
                    "start": "2026-06-30T18:35:57.348207Z"
                },
                "id": "0242ac17-0010-2a5f-447f-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.stat",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/atmosphere.common"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/atmosphere.common",
                                    "stat": {
                                        "atime": 1782844540.663,
                                        "attr_flags": "e",
                                        "attributes": [
                                            "extents"
                                        ],
                                        "block_size": 4096,
                                        "blocks": 8,
                                        "charset": "unknown",
                                        "ctime": 1782844540.685,
                                        "dev": 64769,
                                        "device_type": 0,
                                        "executable": true,
                                        "exists": true,
                                        "gid": 1000,
                                        "gr_name": "zuul",
                                        "inode": 1022500,
                                        "isblk": false,
                                        "ischr": false,
                                        "isdir": true,
                                        "isfifo": false,
                                        "isgid": false,
                                        "islnk": false,
                                        "isreg": false,
                                        "issock": false,
                                        "isuid": false,
                                        "mimetype": "unknown",
                                        "mode": "0755",
                                        "mtime": 1782844527.0057445,
                                        "nlink": 10,
                                        "path": "src/github.com/vexxhost/atmosphere.common",
                                        "pw_name": "zuul",
                                        "readable": true,
                                        "rgrp": true,
                                        "roth": true,
                                        "rusr": true,
                                        "size": 4096,
                                        "uid": 1000,
                                        "version": "2275746141",
                                        "wgrp": false,
                                        "woth": false,
                                        "writeable": true,
                                        "wusr": true,
                                        "xgrp": true,
                                        "xoth": true,
                                        "xusr": true
                                    }
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/atmosphere.common/molecule/secretgen-controller/inventory"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/atmosphere.common/molecule/secretgen-controller/inventory",
                                    "stat": {
                                        "exists": false
                                    }
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/inventory"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/inventory",
                                    "stat": {
                                        "exists": false
                                    }
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:35:59.129870Z",
                            "start": "2026-06-30T18:35:57.360345Z"
                        },
                        "id": "0242ac17-0010-2a5f-447f-000000000004",
                        "name": "Check inventory directories"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "checksum": "da57bcac1474e7962d9895440afeb2fd5b0ff966",
                                    "dest": "src/github.com/vexxhost/atmosphere.common/inventory.yaml",
                                    "diff": [],
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_original_basename": "inventory.yaml",
                                            "attributes": null,
                                            "backup": false,
                                            "checksum": "da57bcac1474e7962d9895440afeb2fd5b0ff966",
                                            "content": null,
                                            "dest": "src/github.com/vexxhost/atmosphere.common",
                                            "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-1782844559.2088597-9-222551584320461/source",
                                            "unsafe_writes": false,
                                            "validate": null
                                        }
                                    },
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere.common"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere.common",
                                        "stat": {
                                            "atime": 1782844540.663,
                                            "attr_flags": "e",
                                            "attributes": [
                                                "extents"
                                            ],
                                            "block_size": 4096,
                                            "blocks": 8,
                                            "charset": "unknown",
                                            "ctime": 1782844540.685,
                                            "dev": 64769,
                                            "device_type": 0,
                                            "executable": true,
                                            "exists": true,
                                            "gid": 1000,
                                            "gr_name": "zuul",
                                            "inode": 1022500,
                                            "isblk": false,
                                            "ischr": false,
                                            "isdir": true,
                                            "isfifo": false,
                                            "isgid": false,
                                            "islnk": false,
                                            "isreg": false,
                                            "issock": false,
                                            "isuid": false,
                                            "mimetype": "unknown",
                                            "mode": "0755",
                                            "mtime": 1782844527.0057445,
                                            "nlink": 10,
                                            "path": "src/github.com/vexxhost/atmosphere.common",
                                            "pw_name": "zuul",
                                            "readable": true,
                                            "rgrp": true,
                                            "roth": true,
                                            "rusr": true,
                                            "size": 4096,
                                            "uid": 1000,
                                            "version": "2275746141",
                                            "wgrp": false,
                                            "woth": false,
                                            "writeable": true,
                                            "wusr": true,
                                            "xgrp": true,
                                            "xoth": true,
                                            "xusr": true
                                        }
                                    },
                                    "md5sum": "d6cc75780f78f878da3d08bbc404c18d",
                                    "mode": "0644",
                                    "owner": "zuul",
                                    "size": 353135,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1782844559.2088597-9-222551584320461/source",
                                    "state": "file",
                                    "uid": 1000
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere.common/molecule/secretgen-controller/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere.common/molecule/secretgen-controller/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:36:00.023000Z",
                            "start": "2026-06-30T18:35:59.139569Z"
                        },
                        "id": "0242ac17-0010-2a5f-447f-000000000005",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "after": null,
                                            "attributes": null,
                                            "backup": false,
                                            "before": null,
                                            "encoding": "utf-8",
                                            "group": null,
                                            "mode": null,
                                            "owner": null,
                                            "path": "src/github.com/vexxhost/atmosphere.common/inventory.yaml",
                                            "regexp": "(^\\s*ansible_host:\\s*).*$",
                                            "replace": "\\1\"{{ nodepool.private_ipv4 }}\"",
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "unsafe_writes": false,
                                            "validate": null
                                        }
                                    },
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere.common"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere.common",
                                        "stat": {
                                            "atime": 1782844540.663,
                                            "attr_flags": "e",
                                            "attributes": [
                                                "extents"
                                            ],
                                            "block_size": 4096,
                                            "blocks": 8,
                                            "charset": "unknown",
                                            "ctime": 1782844540.685,
                                            "dev": 64769,
                                            "device_type": 0,
                                            "executable": true,
                                            "exists": true,
                                            "gid": 1000,
                                            "gr_name": "zuul",
                                            "inode": 1022500,
                                            "isblk": false,
                                            "ischr": false,
                                            "isdir": true,
                                            "isfifo": false,
                                            "isgid": false,
                                            "islnk": false,
                                            "isreg": false,
                                            "issock": false,
                                            "isuid": false,
                                            "mimetype": "unknown",
                                            "mode": "0755",
                                            "mtime": 1782844527.0057445,
                                            "nlink": 10,
                                            "path": "src/github.com/vexxhost/atmosphere.common",
                                            "pw_name": "zuul",
                                            "readable": true,
                                            "rgrp": true,
                                            "roth": true,
                                            "rusr": true,
                                            "size": 4096,
                                            "uid": 1000,
                                            "version": "2275746141",
                                            "wgrp": false,
                                            "woth": false,
                                            "writeable": true,
                                            "wusr": true,
                                            "xgrp": true,
                                            "xoth": true,
                                            "xusr": true
                                        }
                                    },
                                    "msg": "1 replacements made",
                                    "rc": 0
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere.common/molecule/secretgen-controller/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere.common/molecule/secretgen-controller/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:36:00.423823Z",
                            "start": "2026-06-30T18:36:00.031376Z"
                        },
                        "id": "0242ac17-0010-2a5f-447f-000000000006",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "secretgen-controller"
                            ],
                            "delta": "0:04:06.274445",
                            "end": "2026-06-30 18:40:06.977344",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s secretgen-controller",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/vexxhost/atmosphere.common",
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-2a5f-447f-000000000007-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:36:00.702899",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Using CPython 3.12.3 interpreter at: /usr/bin/python3\nCreating virtual environment at: .venv\nwarning: No `requires-python` value found in the workspace. Defaulting to `>=3.12`.\nDownloading pygments (1.2MiB)\nDownloading cryptography (4.3MiB)\nDownloading kubernetes (1.9MiB)\nDownloading pydantic-core (2.0MiB)\nDownloading ansible-core (2.1MiB)\n Downloading pydantic-core\n Downloading cryptography\n Downloading pygments\n Downloading kubernetes\n Downloading ansible-core\nInstalled 52 packages in 48ms\nINFO     Collection 'atmosphere.common' detected.\nINFO     Scenarios will be used from 'extensions/molecule'\nINFO     [secretgen-controller > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [secretgen-controller > prerun] Performing prerun with role_name_check=0...\nINFO     [secretgen-controller > dependency] Executing\nWARNING  [secretgen-controller > dependency] Missing roles requirements file: requirements.yml\nWARNING  [secretgen-controller > dependency] Missing collections requirements file: collections.yml\nWARNING  [secretgen-controller > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > cleanup] Executing\nWARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > destroy] Executing\nWARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.\nINFO     [secretgen-controller > destroy] Executed: Successful\nINFO     [secretgen-controller > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/converge.yml\nINFO     [secretgen-controller > syntax] Executed: Successful\nINFO     [secretgen-controller > create] Executing\nWARNING  [secretgen-controller > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 30 June 2026  18:36:44 +0000 (0:00:00.052)       0:00:00.052 **********\n[WARNING]: Platform linux on host controller is using the discovered Python\ninterpreter at /usr/bin/python3.12, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.18/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Install Debian packages] *************************************************\nTuesday 30 June 2026  18:36:45 +0000 (0:00:01.348)       0:00:01.400 **********\nok: [controller]\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 30 June 2026  18:36:48 +0000 (0:00:02.295)       0:00:03.696 **********\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nTuesday 30 June 2026  18:36:48 +0000 (0:00:00.823)       0:00:04.519 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nTuesday 30 June 2026  18:36:49 +0000 (0:00:00.367)       0:00:04.887 **********\nok: [controller] => (item=/etc/keepalived/keepalived.conf)\nok: [controller] => (item=/etc/keepalived/check_apiserver.sh)\nok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)\nok: [controller] => (item=/etc/haproxy/haproxy.cfg)\nok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)\n\nTASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****\nTuesday 30 June 2026  18:36:50 +0000 (0:00:01.098)       0:00:05.986 **********\nfailed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}\nfailed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}\nfailed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}\n...ignoring\n\nTASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********\nTuesday 30 June 2026  18:36:51 +0000 (0:00:00.718)       0:00:06.704 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nTuesday 30 June 2026  18:36:51 +0000 (0:00:00.323)       0:00:07.028 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nTuesday 30 June 2026  18:36:51 +0000 (0:00:00.236)       0:00:07.264 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nTuesday 30 June 2026  18:36:51 +0000 (0:00:00.029)       0:00:07.294 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nTuesday 30 June 2026  18:36:51 +0000 (0:00:00.038)       0:00:07.333 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nTuesday 30 June 2026  18:36:52 +0000 (0:00:00.798)       0:00:08.132 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nTuesday 30 June 2026  18:36:52 +0000 (0:00:00.232)       0:00:08.364 **********\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 30 June 2026  18:36:52 +0000 (0:00:00.054)       0:00:08.419 **********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:36:53 +0000 (0:00:00.778)       0:00:09.197 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 30 June 2026  18:36:53 +0000 (0:00:00.229)       0:00:09.426 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nTuesday 30 June 2026  18:36:53 +0000 (0:00:00.029)       0:00:09.455 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:36:54 +0000 (0:00:00.241)       0:00:09.697 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:36:54 +0000 (0:00:00.091)       0:00:09.789 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:36:54 +0000 (0:00:00.784)       0:00:10.573 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:36:54 +0000 (0:00:00.039)       0:00:10.612 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 30 June 2026  18:36:55 +0000 (0:00:00.242)       0:00:10.855 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:36:56 +0000 (0:00:00.918)       0:00:11.773 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:36:56 +0000 (0:00:00.062)       0:00:11.835 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:36:56 +0000 (0:00:00.761)       0:00:12.597 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 30 June 2026  18:36:59 +0000 (0:00:02.991)       0:00:15.588 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 30 June 2026  18:37:00 +0000 (0:00:00.031)       0:00:15.620 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 30 June 2026  18:37:00 +0000 (0:00:00.027)       0:00:15.647 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 30 June 2026  18:37:00 +0000 (0:00:00.023)       0:00:15.670 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 30 June 2026  18:37:06 +0000 (0:00:06.628)       0:00:22.299 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 30 June 2026  18:37:07 +0000 (0:00:00.535)       0:00:22.834 **********\nchanged: [controller] => (item={'path': '/etc/containerd'})\nchanged: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nTuesday 30 June 2026  18:37:08 +0000 (0:00:01.105)       0:00:23.940 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 30 June 2026  18:37:09 +0000 (0:00:00.679)       0:00:24.619 **********\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nTuesday 30 June 2026  18:37:09 +0000 (0:00:00.006)       0:00:24.626 **********\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nTuesday 30 June 2026  18:37:09 +0000 (0:00:00.802)       0:00:25.428 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 30 June 2026  18:37:10 +0000 (0:00:00.853)       0:00:26.282 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nTuesday 30 June 2026  18:37:11 +0000 (0:00:00.676)       0:00:26.958 **********\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on np0000183622's Python /usr/bin/python3.12. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nTuesday 30 June 2026  18:37:11 +0000 (0:00:00.577)       0:00:27.535 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nTuesday 30 June 2026  18:37:11 +0000 (0:00:00.037)       0:00:27.572 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nTuesday 30 June 2026  18:37:11 +0000 (0:00:00.036)       0:00:27.609 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nTuesday 30 June 2026  18:37:12 +0000 (0:00:00.038)       0:00:27.648 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nTuesday 30 June 2026  18:37:12 +0000 (0:00:00.035)       0:00:27.683 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:37:12 +0000 (0:00:00.039)       0:00:27.722 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:37:12 +0000 (0:00:00.241)       0:00:27.964 **********\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:37:12 +0000 (0:00:00.043)       0:00:28.007 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:37:13 +0000 (0:00:00.871)       0:00:28.878 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:37:13 +0000 (0:00:00.036)       0:00:28.915 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:37:13 +0000 (0:00:00.238)       0:00:29.153 **********\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:37:13 +0000 (0:00:00.039)       0:00:29.193 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:37:14 +0000 (0:00:01.231)       0:00:30.424 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 30 June 2026  18:37:14 +0000 (0:00:00.043)       0:00:30.468 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 30 June 2026  18:37:14 +0000 (0:00:00.029)       0:00:30.497 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 30 June 2026  18:37:14 +0000 (0:00:00.030)       0:00:30.528 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 30 June 2026  18:37:14 +0000 (0:00:00.034)       0:00:30.562 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 30 June 2026  18:37:15 +0000 (0:00:00.876)       0:00:31.439 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 30 June 2026  18:37:16 +0000 (0:00:00.530)       0:00:31.969 **********\nok: [controller] => (item={'path': '/etc/containerd'})\nok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nTuesday 30 June 2026  18:37:17 +0000 (0:00:01.129)       0:00:33.098 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 30 June 2026  18:37:18 +0000 (0:00:00.656)       0:00:33.755 **********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 30 June 2026  18:37:18 +0000 (0:00:00.005)       0:00:33.760 **********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:37:18 +0000 (0:00:00.426)       0:00:34.186 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:37:18 +0000 (0:00:00.236)       0:00:34.423 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/crictl-v1.35.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:37:18 +0000 (0:00:00.054)       0:00:34.478 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:37:19 +0000 (0:00:00.690)       0:00:35.168 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:37:21 +0000 (0:00:01.526)       0:00:36.694 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/critest-v1.35.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:37:21 +0000 (0:00:00.059)       0:00:36.754 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:37:21 +0000 (0:00:00.715)       0:00:37.469 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nTuesday 30 June 2026  18:37:23 +0000 (0:00:01.500)       0:00:38.969 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nTuesday 30 June 2026  18:37:23 +0000 (0:00:00.539)       0:00:39.509 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:37:24 +0000 (0:00:00.243)       0:00:39.752 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:37:24 +0000 (0:00:00.244)       0:00:39.997 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.9.1/cni-plugins-linux-amd64-v1.9.1.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:37:24 +0000 (0:00:00.059)       0:00:40.056 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:37:25 +0000 (0:00:00.917)       0:00:40.973 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nTuesday 30 June 2026  18:37:28 +0000 (0:00:02.776)       0:00:43.749 **********\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nTuesday 30 June 2026  18:37:28 +0000 (0:00:00.049)       0:00:43.799 **********\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nTuesday 30 June 2026  18:37:29 +0000 (0:00:00.858)       0:00:44.658 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nTuesday 30 June 2026  18:37:29 +0000 (0:00:00.346)       0:00:45.005 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nTuesday 30 June 2026  18:37:29 +0000 (0:00:00.543)       0:00:45.548 **********\nchanged: [controller] => (item=br_netfilter)\nok: [controller] => (item=ip_tables)\nchanged: [controller] => (item=ip6_tables)\nchanged: [controller] => (item=nf_conntrack)\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:37:30 +0000 (0:00:01.008)       0:00:46.557 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:37:31 +0000 (0:00:00.236)       0:00:46.793 **********\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:37:31 +0000 (0:00:00.042)       0:00:46.835 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:37:33 +0000 (0:00:02.171)       0:00:49.006 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nTuesday 30 June 2026  18:37:33 +0000 (0:00:00.037)       0:00:49.044 **********\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nTuesday 30 June 2026  18:37:33 +0000 (0:00:00.043)       0:00:49.087 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nTuesday 30 June 2026  18:37:33 +0000 (0:00:00.033)       0:00:49.121 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nTuesday 30 June 2026  18:37:36 +0000 (0:00:03.267)       0:00:52.389 **********\nchanged: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})\nchanged: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})\n\nTASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***\nTuesday 30 June 2026  18:37:38 +0000 (0:00:01.577)       0:00:53.966 **********\nchanged: [controller] => (item=/etc/systemd/system/kubelet.service.d)\nok: [controller] => (item=/etc/kubernetes)\nok: [controller] => (item=/etc/kubernetes/manifests)\n\nTASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********\nTuesday 30 June 2026  18:37:39 +0000 (0:00:00.696)       0:00:54.662 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nTuesday 30 June 2026  18:37:39 +0000 (0:00:00.548)       0:00:55.211 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nTuesday 30 June 2026  18:37:40 +0000 (0:00:00.521)       0:00:55.732 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nTuesday 30 June 2026  18:37:40 +0000 (0:00:00.319)       0:00:56.052 **********\n[DEPRECATION WARNING]: Conditional result at location /home/zuul/.ansible/colle\nctions/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml\n91:11 was of type 'AnsibleUnsafeText'. Conditional results should only be True\nor False. The result was interpreted as False. This feature will be removed in\nversion 2.19. Deprecation warnings can be disabled by setting\ndeprecation_warnings=False in ansible.cfg.\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********\nTuesday 30 June 2026  18:37:40 +0000 (0:00:00.034)       0:00:56.086 **********\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nTuesday 30 June 2026  18:37:41 +0000 (0:00:00.531)       0:00:56.618 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nTuesday 30 June 2026  18:37:41 +0000 (0:00:00.570)       0:00:57.189 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nTuesday 30 June 2026  18:37:42 +0000 (0:00:00.658)       0:00:57.847 **********\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nTuesday 30 June 2026  18:37:42 +0000 (0:00:00.005)       0:00:57.853 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nTuesday 30 June 2026  18:37:43 +0000 (0:00:00.880)       0:00:58.733 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nTuesday 30 June 2026  18:37:43 +0000 (0:00:00.701)       0:00:59.434 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nTuesday 30 June 2026  18:37:44 +0000 (0:00:00.895)       0:01:00.330 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nTuesday 30 June 2026  18:37:45 +0000 (0:00:00.767)       0:01:01.098 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nTuesday 30 June 2026  18:37:45 +0000 (0:00:00.328)       0:01:01.426 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.462)       0:01:01.889 **********\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.088)       0:01:01.978 **********\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.074)       0:01:02.052 **********\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.245)       0:01:02.298 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.044)       0:01:02.342 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.047)       0:01:02.390 **********\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nTuesday 30 June 2026  18:37:46 +0000 (0:00:00.036)       0:01:02.426 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.605)       0:01:03.032 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.035)       0:01:03.068 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.039)       0:01:03.107 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.031)       0:01:03.138 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.039)       0:01:03.178 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.028)       0:01:03.207 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.034)       0:01:03.241 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nTuesday 30 June 2026  18:37:47 +0000 (0:00:00.035)       0:01:03.276 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nTuesday 30 June 2026  18:38:33 +0000 (0:00:45.463)       0:01:48.739 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nTuesday 30 June 2026  18:38:33 +0000 (0:00:00.231)       0:01:48.971 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nTuesday 30 June 2026  18:38:33 +0000 (0:00:00.030)       0:01:49.002 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nTuesday 30 June 2026  18:38:33 +0000 (0:00:00.238)       0:01:49.240 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nTuesday 30 June 2026  18:38:33 +0000 (0:00:00.227)       0:01:49.467 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nTuesday 30 June 2026  18:38:34 +0000 (0:00:00.245)       0:01:49.713 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nTuesday 30 June 2026  18:38:34 +0000 (0:00:00.038)       0:01:49.752 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nTuesday 30 June 2026  18:38:34 +0000 (0:00:00.042)       0:01:49.794 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nTuesday 30 June 2026  18:38:34 +0000 (0:00:00.040)       0:01:49.834 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nTuesday 30 June 2026  18:38:43 +0000 (0:00:08.872)       0:01:58.706 **********\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not\nwork.\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nTuesday 30 June 2026  18:38:43 +0000 (0:00:00.745)       0:01:59.451 **********\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nTuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.489 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nTuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.526 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nTuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.564 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nTuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.601 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nTuesday 30 June 2026  18:38:44 +0000 (0:00:00.033)       0:01:59.634 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nTuesday 30 June 2026  18:38:44 +0000 (0:00:00.442)       0:02:00.077 **********\nchanged: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 30 June 2026  18:38:45 +0000 (0:00:00.936)       0:02:01.013 **********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 30 June 2026  18:38:47 +0000 (0:00:01.763)       0:02:02.776 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 30 June 2026  18:38:47 +0000 (0:00:00.235)       0:02:03.011 **********\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nTuesday 30 June 2026  18:38:48 +0000 (0:00:00.991)       0:02:04.003 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:38:48 +0000 (0:00:00.252)       0:02:04.255 **********\nok: [controller] => {\n    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:38:48 +0000 (0:00:00.034)       0:02:04.290 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:38:49 +0000 (0:00:00.679)       0:02:04.969 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nTuesday 30 June 2026  18:38:51 +0000 (0:00:01.658)       0:02:06.628 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nTuesday 30 June 2026  18:38:51 +0000 (0:00:00.354)       0:02:06.982 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nTuesday 30 June 2026  18:38:51 +0000 (0:00:00.229)       0:02:07.211 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nTuesday 30 June 2026  18:38:51 +0000 (0:00:00.289)       0:02:07.500 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nTuesday 30 June 2026  18:38:52 +0000 (0:00:00.233)       0:02:07.734 **********\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nTuesday 30 June 2026  18:38:52 +0000 (0:00:00.235)       0:02:07.970 **********\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 30 June 2026  18:38:52 +0000 (0:00:00.041)       0:02:08.011 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 30 June 2026  18:38:52 +0000 (0:00:00.042)       0:02:08.054 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 30 June 2026  18:38:53 +0000 (0:00:01.046)       0:02:09.100 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nTuesday 30 June 2026  18:38:55 +0000 (0:00:01.945)       0:02:11.046 **********\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************\nTuesday 30 June 2026  18:38:55 +0000 (0:00:00.035)       0:02:11.081 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nTuesday 30 June 2026  18:38:56 +0000 (0:00:00.637)       0:02:11.719 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nTuesday 30 June 2026  18:38:56 +0000 (0:00:00.802)       0:02:12.522 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nTuesday 30 June 2026  18:38:58 +0000 (0:00:02.066)       0:02:14.588 **********\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************\nTuesday 30 June 2026  18:38:59 +0000 (0:00:00.035)       0:02:14.624 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.envoy_gateway : Deploy Helm chart] *******************\nTuesday 30 June 2026  18:38:59 +0000 (0:00:00.533)       0:02:15.157 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.envoy_gateway : Create GatewayClass] *****************\nTuesday 30 June 2026  18:39:36 +0000 (0:00:36.518)       0:02:51.676 **********\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=117  changed=54   unreachable=0    failed=0    skipped=35   rescued=0    ignored=2\n\n\nTASKS RECAP ********************************************************************\nTuesday 30 June 2026  18:39:36 +0000 (0:00:00.726)       0:02:52.402 **********\n===============================================================================\nvexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 45.46s\nvexxhost.kubernetes.envoy_gateway : Deploy Helm chart ------------------ 36.52s\nvexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 8.87s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 6.63s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 3.27s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.99s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.78s\nInstall Debian packages ------------------------------------------------- 2.30s\nvexxhost.containers.download_artifact : Download item ------------------- 2.17s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.07s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.95s\nGathering Facts --------------------------------------------------------- 1.76s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.73s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.66s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 1.58s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.53s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.50s\nGathering Facts --------------------------------------------------------- 1.35s\nvexxhost.containers.download_artifact : Download item ------------------- 1.23s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.13s\nINFO     [secretgen-controller > prepare] Executed: Successful\nINFO     [secretgen-controller > converge] Executing\n\nPLAY [Deploy \"secretgen-controller\"] *******************************************\n\nTASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****\nTuesday 30 June 2026  18:39:37 +0000 (0:00:00.044)       0:00:00.044 **********\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not\nwork.\n[WARNING]: Platform linux on host controller is using the discovered Python\ninterpreter at /usr/bin/python3.12, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.18/reference_appendices/interpreter_discovery.html for more information.\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nTuesday 30 June 2026  18:39:38 +0000 (0:00:01.321)       0:00:01.366 **********\n===============================================================================\natmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.32s\nINFO     [secretgen-controller > converge] Executed: Successful\nINFO     [secretgen-controller > idempotence] Executing\n\nPLAY [Deploy \"secretgen-controller\"] *******************************************\n\nTASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****\nTuesday 30 June 2026  18:39:39 +0000 (0:00:00.046)       0:00:00.046 **********\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not\nwork.\n[WARNING]: Platform linux on host controller is using the discovered Python\ninterpreter at /usr/bin/python3.12, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.18/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nTuesday 30 June 2026  18:39:40 +0000 (0:00:01.278)       0:00:01.324 **********\n===============================================================================\natmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.28s\nINFO     [secretgen-controller > idempotence] Executed: Successful\nINFO     [secretgen-controller > side_effect] Executing\nWARNING  [secretgen-controller > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > verify] Executing\n\nPLAY [Verify] ******************************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 30 June 2026  18:39:41 +0000 (0:00:00.041)       0:00:00.041 **********\n[WARNING]: Platform linux on host controller is using the discovered Python\ninterpreter at /usr/bin/python3.12, but future installation of another Python\ninterpreter could change the meaning of that path. See\nhttps://docs.ansible.com/ansible-\ncore/2.18/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Wait for secretgen-controller deployment to be available] ****************\nTuesday 30 June 2026  18:39:43 +0000 (0:00:01.249)       0:00:01.290 **********\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not\nwork.\nFAILED - RETRYING: [controller]: Wait for secretgen-controller deployment to be available (30 retries left).\nFAILED - RETRYING: [controller]: Wait for secretgen-controller deployment to be available (29 retries left).\nok: [controller]\n\nTASK [Create a test Password resource] *****************************************\nTuesday 30 June 2026  18:40:05 +0000 (0:00:22.219)       0:00:23.510 **********\nchanged: [controller]\n\nTASK [Wait for test-password secret to be generated] ***************************\nTuesday 30 June 2026  18:40:06 +0000 (0:00:00.866)       0:00:24.376 **********\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=4    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nTuesday 30 June 2026  18:40:06 +0000 (0:00:00.686)       0:00:25.062 **********\n===============================================================================\nWait for secretgen-controller deployment to be available --------------- 22.22s\nGathering Facts --------------------------------------------------------- 1.25s\nCreate a test Password resource ----------------------------------------- 0.87s\nWait for test-password secret to be generated --------------------------- 0.69s\nINFO     [secretgen-controller > verify] Executed: Successful\nINFO     [secretgen-controller > cleanup] Executing\nWARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > destroy] Executing\nWARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.\nINFO     [secretgen-controller > destroy] Executed: Successful\nWARNING  Molecule executed 1 scenario (1 missing files)",
                            "stdout_lines": [
                                "Using CPython 3.12.3 interpreter at: /usr/bin/python3",
                                "Creating virtual environment at: .venv",
                                "warning: No `requires-python` value found in the workspace. Defaulting to `>=3.12`.",
                                "Downloading pygments (1.2MiB)",
                                "Downloading cryptography (4.3MiB)",
                                "Downloading kubernetes (1.9MiB)",
                                "Downloading pydantic-core (2.0MiB)",
                                "Downloading ansible-core (2.1MiB)",
                                " Downloading pydantic-core",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading kubernetes",
                                " Downloading ansible-core",
                                "Installed 52 packages in 48ms",
                                "INFO     Collection 'atmosphere.common' detected.",
                                "INFO     Scenarios will be used from 'extensions/molecule'",
                                "INFO     [secretgen-controller > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [secretgen-controller > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [secretgen-controller > dependency] Executing",
                                "WARNING  [secretgen-controller > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [secretgen-controller > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [secretgen-controller > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > cleanup] Executing",
                                "WARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > destroy] Executing",
                                "WARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [secretgen-controller > destroy] Executed: Successful",
                                "INFO     [secretgen-controller > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/converge.yml",
                                "INFO     [secretgen-controller > syntax] Executed: Successful",
                                "INFO     [secretgen-controller > create] Executing",
                                "WARNING  [secretgen-controller > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 30 June 2026  18:36:44 +0000 (0:00:00.052)       0:00:00.052 **********",
                                "[WARNING]: Platform linux on host controller is using the discovered Python",
                                "interpreter at /usr/bin/python3.12, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.18/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Install Debian packages] *************************************************",
                                "Tuesday 30 June 2026  18:36:45 +0000 (0:00:01.348)       0:00:01.400 **********",
                                "ok: [controller]",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 30 June 2026  18:36:48 +0000 (0:00:02.295)       0:00:03.696 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Tuesday 30 June 2026  18:36:48 +0000 (0:00:00.823)       0:00:04.519 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Tuesday 30 June 2026  18:36:49 +0000 (0:00:00.367)       0:00:04.887 **********",
                                "ok: [controller] => (item=/etc/keepalived/keepalived.conf)",
                                "ok: [controller] => (item=/etc/keepalived/check_apiserver.sh)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)",
                                "ok: [controller] => (item=/etc/haproxy/haproxy.cfg)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****",
                                "Tuesday 30 June 2026  18:36:50 +0000 (0:00:01.098)       0:00:05.986 **********",
                                "failed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}",
                                "failed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}",
                                "failed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********",
                                "Tuesday 30 June 2026  18:36:51 +0000 (0:00:00.718)       0:00:06.704 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Tuesday 30 June 2026  18:36:51 +0000 (0:00:00.323)       0:00:07.028 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Tuesday 30 June 2026  18:36:51 +0000 (0:00:00.236)       0:00:07.264 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Tuesday 30 June 2026  18:36:51 +0000 (0:00:00.029)       0:00:07.294 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Tuesday 30 June 2026  18:36:51 +0000 (0:00:00.038)       0:00:07.333 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Tuesday 30 June 2026  18:36:52 +0000 (0:00:00.798)       0:00:08.132 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Tuesday 30 June 2026  18:36:52 +0000 (0:00:00.232)       0:00:08.364 **********",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 30 June 2026  18:36:52 +0000 (0:00:00.054)       0:00:08.419 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:36:53 +0000 (0:00:00.778)       0:00:09.197 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 30 June 2026  18:36:53 +0000 (0:00:00.229)       0:00:09.426 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Tuesday 30 June 2026  18:36:53 +0000 (0:00:00.029)       0:00:09.455 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:36:54 +0000 (0:00:00.241)       0:00:09.697 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:36:54 +0000 (0:00:00.091)       0:00:09.789 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:36:54 +0000 (0:00:00.784)       0:00:10.573 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:36:54 +0000 (0:00:00.039)       0:00:10.612 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 30 June 2026  18:36:55 +0000 (0:00:00.242)       0:00:10.855 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:36:56 +0000 (0:00:00.918)       0:00:11.773 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.1/containerd-2.3.1-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:36:56 +0000 (0:00:00.062)       0:00:11.835 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:36:56 +0000 (0:00:00.761)       0:00:12.597 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 30 June 2026  18:36:59 +0000 (0:00:02.991)       0:00:15.588 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 30 June 2026  18:37:00 +0000 (0:00:00.031)       0:00:15.620 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 30 June 2026  18:37:00 +0000 (0:00:00.027)       0:00:15.647 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 30 June 2026  18:37:00 +0000 (0:00:00.023)       0:00:15.670 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 30 June 2026  18:37:06 +0000 (0:00:06.628)       0:00:22.299 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 30 June 2026  18:37:07 +0000 (0:00:00.535)       0:00:22.834 **********",
                                "changed: [controller] => (item={'path': '/etc/containerd'})",
                                "changed: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Tuesday 30 June 2026  18:37:08 +0000 (0:00:01.105)       0:00:23.940 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 30 June 2026  18:37:09 +0000 (0:00:00.679)       0:00:24.619 **********",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Tuesday 30 June 2026  18:37:09 +0000 (0:00:00.006)       0:00:24.626 **********",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Tuesday 30 June 2026  18:37:09 +0000 (0:00:00.802)       0:00:25.428 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 30 June 2026  18:37:10 +0000 (0:00:00.853)       0:00:26.282 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Tuesday 30 June 2026  18:37:11 +0000 (0:00:00.676)       0:00:26.958 **********",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on np0000183622's Python /usr/bin/python3.12. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Tuesday 30 June 2026  18:37:11 +0000 (0:00:00.577)       0:00:27.535 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Tuesday 30 June 2026  18:37:11 +0000 (0:00:00.037)       0:00:27.572 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Tuesday 30 June 2026  18:37:11 +0000 (0:00:00.036)       0:00:27.609 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Tuesday 30 June 2026  18:37:12 +0000 (0:00:00.038)       0:00:27.648 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Tuesday 30 June 2026  18:37:12 +0000 (0:00:00.035)       0:00:27.683 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:37:12 +0000 (0:00:00.039)       0:00:27.722 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:37:12 +0000 (0:00:00.241)       0:00:27.964 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:37:12 +0000 (0:00:00.043)       0:00:28.007 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:37:13 +0000 (0:00:00.871)       0:00:28.878 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:37:13 +0000 (0:00:00.036)       0:00:28.915 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:37:13 +0000 (0:00:00.238)       0:00:29.153 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:37:13 +0000 (0:00:00.039)       0:00:29.193 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:37:14 +0000 (0:00:01.231)       0:00:30.424 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 30 June 2026  18:37:14 +0000 (0:00:00.043)       0:00:30.468 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 30 June 2026  18:37:14 +0000 (0:00:00.029)       0:00:30.497 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 30 June 2026  18:37:14 +0000 (0:00:00.030)       0:00:30.528 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 30 June 2026  18:37:14 +0000 (0:00:00.034)       0:00:30.562 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 30 June 2026  18:37:15 +0000 (0:00:00.876)       0:00:31.439 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 30 June 2026  18:37:16 +0000 (0:00:00.530)       0:00:31.969 **********",
                                "ok: [controller] => (item={'path': '/etc/containerd'})",
                                "ok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Tuesday 30 June 2026  18:37:17 +0000 (0:00:01.129)       0:00:33.098 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 30 June 2026  18:37:18 +0000 (0:00:00.656)       0:00:33.755 **********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 30 June 2026  18:37:18 +0000 (0:00:00.005)       0:00:33.760 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:37:18 +0000 (0:00:00.426)       0:00:34.186 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:37:18 +0000 (0:00:00.236)       0:00:34.423 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/crictl-v1.35.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:37:18 +0000 (0:00:00.054)       0:00:34.478 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:37:19 +0000 (0:00:00.690)       0:00:35.168 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:37:21 +0000 (0:00:01.526)       0:00:36.694 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/critest-v1.35.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:37:21 +0000 (0:00:00.059)       0:00:36.754 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:37:21 +0000 (0:00:00.715)       0:00:37.469 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Tuesday 30 June 2026  18:37:23 +0000 (0:00:01.500)       0:00:38.969 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Tuesday 30 June 2026  18:37:23 +0000 (0:00:00.539)       0:00:39.509 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:37:24 +0000 (0:00:00.243)       0:00:39.752 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:37:24 +0000 (0:00:00.244)       0:00:39.997 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.9.1/cni-plugins-linux-amd64-v1.9.1.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:37:24 +0000 (0:00:00.059)       0:00:40.056 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:37:25 +0000 (0:00:00.917)       0:00:40.973 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Tuesday 30 June 2026  18:37:28 +0000 (0:00:02.776)       0:00:43.749 **********",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Tuesday 30 June 2026  18:37:28 +0000 (0:00:00.049)       0:00:43.799 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Tuesday 30 June 2026  18:37:29 +0000 (0:00:00.858)       0:00:44.658 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Tuesday 30 June 2026  18:37:29 +0000 (0:00:00.346)       0:00:45.005 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Tuesday 30 June 2026  18:37:29 +0000 (0:00:00.543)       0:00:45.548 **********",
                                "changed: [controller] => (item=br_netfilter)",
                                "ok: [controller] => (item=ip_tables)",
                                "changed: [controller] => (item=ip6_tables)",
                                "changed: [controller] => (item=nf_conntrack)",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:37:30 +0000 (0:00:01.008)       0:00:46.557 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:37:31 +0000 (0:00:00.236)       0:00:46.793 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:37:31 +0000 (0:00:00.042)       0:00:46.835 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:37:33 +0000 (0:00:02.171)       0:00:49.006 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Tuesday 30 June 2026  18:37:33 +0000 (0:00:00.037)       0:00:49.044 **********",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Tuesday 30 June 2026  18:37:33 +0000 (0:00:00.043)       0:00:49.087 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Tuesday 30 June 2026  18:37:33 +0000 (0:00:00.033)       0:00:49.121 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Tuesday 30 June 2026  18:37:36 +0000 (0:00:03.267)       0:00:52.389 **********",
                                "changed: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***",
                                "Tuesday 30 June 2026  18:37:38 +0000 (0:00:01.577)       0:00:53.966 **********",
                                "changed: [controller] => (item=/etc/systemd/system/kubelet.service.d)",
                                "ok: [controller] => (item=/etc/kubernetes)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********",
                                "Tuesday 30 June 2026  18:37:39 +0000 (0:00:00.696)       0:00:54.662 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Tuesday 30 June 2026  18:37:39 +0000 (0:00:00.548)       0:00:55.211 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Tuesday 30 June 2026  18:37:40 +0000 (0:00:00.521)       0:00:55.732 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Tuesday 30 June 2026  18:37:40 +0000 (0:00:00.319)       0:00:56.052 **********",
                                "[DEPRECATION WARNING]: Conditional result at location /home/zuul/.ansible/colle",
                                "ctions/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml",
                                "91:11 was of type 'AnsibleUnsafeText'. Conditional results should only be True",
                                "or False. The result was interpreted as False. This feature will be removed in",
                                "version 2.19. Deprecation warnings can be disabled by setting",
                                "deprecation_warnings=False in ansible.cfg.",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********",
                                "Tuesday 30 June 2026  18:37:40 +0000 (0:00:00.034)       0:00:56.086 **********",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Tuesday 30 June 2026  18:37:41 +0000 (0:00:00.531)       0:00:56.618 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Tuesday 30 June 2026  18:37:41 +0000 (0:00:00.570)       0:00:57.189 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Tuesday 30 June 2026  18:37:42 +0000 (0:00:00.658)       0:00:57.847 **********",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Tuesday 30 June 2026  18:37:42 +0000 (0:00:00.005)       0:00:57.853 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Tuesday 30 June 2026  18:37:43 +0000 (0:00:00.880)       0:00:58.733 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Tuesday 30 June 2026  18:37:43 +0000 (0:00:00.701)       0:00:59.434 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Tuesday 30 June 2026  18:37:44 +0000 (0:00:00.895)       0:01:00.330 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Tuesday 30 June 2026  18:37:45 +0000 (0:00:00.767)       0:01:01.098 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Tuesday 30 June 2026  18:37:45 +0000 (0:00:00.328)       0:01:01.426 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.462)       0:01:01.889 **********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.088)       0:01:01.978 **********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.074)       0:01:02.052 **********",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.245)       0:01:02.298 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.044)       0:01:02.342 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.047)       0:01:02.390 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Tuesday 30 June 2026  18:37:46 +0000 (0:00:00.036)       0:01:02.426 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.605)       0:01:03.032 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.035)       0:01:03.068 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.039)       0:01:03.107 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.031)       0:01:03.138 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.039)       0:01:03.178 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.028)       0:01:03.207 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.034)       0:01:03.241 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Tuesday 30 June 2026  18:37:47 +0000 (0:00:00.035)       0:01:03.276 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Tuesday 30 June 2026  18:38:33 +0000 (0:00:45.463)       0:01:48.739 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Tuesday 30 June 2026  18:38:33 +0000 (0:00:00.231)       0:01:48.971 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Tuesday 30 June 2026  18:38:33 +0000 (0:00:00.030)       0:01:49.002 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Tuesday 30 June 2026  18:38:33 +0000 (0:00:00.238)       0:01:49.240 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Tuesday 30 June 2026  18:38:33 +0000 (0:00:00.227)       0:01:49.467 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Tuesday 30 June 2026  18:38:34 +0000 (0:00:00.245)       0:01:49.713 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Tuesday 30 June 2026  18:38:34 +0000 (0:00:00.038)       0:01:49.752 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Tuesday 30 June 2026  18:38:34 +0000 (0:00:00.042)       0:01:49.794 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Tuesday 30 June 2026  18:38:34 +0000 (0:00:00.040)       0:01:49.834 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Tuesday 30 June 2026  18:38:43 +0000 (0:00:08.872)       0:01:58.706 **********",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not",
                                "work.",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Tuesday 30 June 2026  18:38:43 +0000 (0:00:00.745)       0:01:59.451 **********",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Tuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.489 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Tuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.526 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Tuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.564 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Tuesday 30 June 2026  18:38:43 +0000 (0:00:00.037)       0:01:59.601 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Tuesday 30 June 2026  18:38:44 +0000 (0:00:00.033)       0:01:59.634 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Tuesday 30 June 2026  18:38:44 +0000 (0:00:00.442)       0:02:00.077 **********",
                                "changed: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 30 June 2026  18:38:45 +0000 (0:00:00.936)       0:02:01.013 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 30 June 2026  18:38:47 +0000 (0:00:01.763)       0:02:02.776 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 30 June 2026  18:38:47 +0000 (0:00:00.235)       0:02:03.011 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Tuesday 30 June 2026  18:38:48 +0000 (0:00:00.991)       0:02:04.003 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:38:48 +0000 (0:00:00.252)       0:02:04.255 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:38:48 +0000 (0:00:00.034)       0:02:04.290 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:38:49 +0000 (0:00:00.679)       0:02:04.969 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Tuesday 30 June 2026  18:38:51 +0000 (0:00:01.658)       0:02:06.628 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Tuesday 30 June 2026  18:38:51 +0000 (0:00:00.354)       0:02:06.982 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Tuesday 30 June 2026  18:38:51 +0000 (0:00:00.229)       0:02:07.211 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Tuesday 30 June 2026  18:38:51 +0000 (0:00:00.289)       0:02:07.500 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Tuesday 30 June 2026  18:38:52 +0000 (0:00:00.233)       0:02:07.734 **********",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Tuesday 30 June 2026  18:38:52 +0000 (0:00:00.235)       0:02:07.970 **********",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 30 June 2026  18:38:52 +0000 (0:00:00.041)       0:02:08.011 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 30 June 2026  18:38:52 +0000 (0:00:00.042)       0:02:08.054 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 30 June 2026  18:38:53 +0000 (0:00:01.046)       0:02:09.100 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Tuesday 30 June 2026  18:38:55 +0000 (0:00:01.945)       0:02:11.046 **********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************",
                                "Tuesday 30 June 2026  18:38:55 +0000 (0:00:00.035)       0:02:11.081 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Tuesday 30 June 2026  18:38:56 +0000 (0:00:00.637)       0:02:11.719 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Tuesday 30 June 2026  18:38:56 +0000 (0:00:00.802)       0:02:12.522 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Tuesday 30 June 2026  18:38:58 +0000 (0:00:02.066)       0:02:14.588 **********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************",
                                "Tuesday 30 June 2026  18:38:59 +0000 (0:00:00.035)       0:02:14.624 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.envoy_gateway : Deploy Helm chart] *******************",
                                "Tuesday 30 June 2026  18:38:59 +0000 (0:00:00.533)       0:02:15.157 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.envoy_gateway : Create GatewayClass] *****************",
                                "Tuesday 30 June 2026  18:39:36 +0000 (0:00:36.518)       0:02:51.676 **********",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=117  changed=54   unreachable=0    failed=0    skipped=35   rescued=0    ignored=2",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 30 June 2026  18:39:36 +0000 (0:00:00.726)       0:02:52.402 **********",
                                "===============================================================================",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 45.46s",
                                "vexxhost.kubernetes.envoy_gateway : Deploy Helm chart ------------------ 36.52s",
                                "vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 8.87s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 6.63s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 3.27s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.99s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.78s",
                                "Install Debian packages ------------------------------------------------- 2.30s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 2.17s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.07s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.95s",
                                "Gathering Facts --------------------------------------------------------- 1.76s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.73s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.66s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 1.58s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.53s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.50s",
                                "Gathering Facts --------------------------------------------------------- 1.35s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 1.23s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.13s",
                                "INFO     [secretgen-controller > prepare] Executed: Successful",
                                "INFO     [secretgen-controller > converge] Executing",
                                "",
                                "PLAY [Deploy \"secretgen-controller\"] *******************************************",
                                "",
                                "TASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****",
                                "Tuesday 30 June 2026  18:39:37 +0000 (0:00:00.044)       0:00:00.044 **********",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not",
                                "work.",
                                "[WARNING]: Platform linux on host controller is using the discovered Python",
                                "interpreter at /usr/bin/python3.12, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.18/reference_appendices/interpreter_discovery.html for more information.",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 30 June 2026  18:39:38 +0000 (0:00:01.321)       0:00:01.366 **********",
                                "===============================================================================",
                                "atmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.32s",
                                "INFO     [secretgen-controller > converge] Executed: Successful",
                                "INFO     [secretgen-controller > idempotence] Executing",
                                "",
                                "PLAY [Deploy \"secretgen-controller\"] *******************************************",
                                "",
                                "TASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****",
                                "Tuesday 30 June 2026  18:39:39 +0000 (0:00:00.046)       0:00:00.046 **********",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not",
                                "work.",
                                "[WARNING]: Platform linux on host controller is using the discovered Python",
                                "interpreter at /usr/bin/python3.12, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.18/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 30 June 2026  18:39:40 +0000 (0:00:01.278)       0:00:01.324 **********",
                                "===============================================================================",
                                "atmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.28s",
                                "INFO     [secretgen-controller > idempotence] Executed: Successful",
                                "INFO     [secretgen-controller > side_effect] Executing",
                                "WARNING  [secretgen-controller > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > verify] Executing",
                                "",
                                "PLAY [Verify] ******************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 30 June 2026  18:39:41 +0000 (0:00:00.041)       0:00:00.041 **********",
                                "[WARNING]: Platform linux on host controller is using the discovered Python",
                                "interpreter at /usr/bin/python3.12, but future installation of another Python",
                                "interpreter could change the meaning of that path. See",
                                "https://docs.ansible.com/ansible-",
                                "core/2.18/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Wait for secretgen-controller deployment to be available] ****************",
                                "Tuesday 30 June 2026  18:39:43 +0000 (0:00:01.249)       0:00:01.290 **********",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not",
                                "work.",
                                "FAILED - RETRYING: [controller]: Wait for secretgen-controller deployment to be available (30 retries left).",
                                "FAILED - RETRYING: [controller]: Wait for secretgen-controller deployment to be available (29 retries left).",
                                "ok: [controller]",
                                "",
                                "TASK [Create a test Password resource] *****************************************",
                                "Tuesday 30 June 2026  18:40:05 +0000 (0:00:22.219)       0:00:23.510 **********",
                                "changed: [controller]",
                                "",
                                "TASK [Wait for test-password secret to be generated] ***************************",
                                "Tuesday 30 June 2026  18:40:06 +0000 (0:00:00.866)       0:00:24.376 **********",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=4    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 30 June 2026  18:40:06 +0000 (0:00:00.686)       0:00:25.062 **********",
                                "===============================================================================",
                                "Wait for secretgen-controller deployment to be available --------------- 22.22s",
                                "Gathering Facts --------------------------------------------------------- 1.25s",
                                "Create a test Password resource ----------------------------------------- 0.87s",
                                "Wait for test-password secret to be generated --------------------------- 0.69s",
                                "INFO     [secretgen-controller > verify] Executed: Successful",
                                "INFO     [secretgen-controller > cleanup] Executing",
                                "WARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > destroy] Executing",
                                "WARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [secretgen-controller > destroy] Executed: Successful",
                                "WARNING  Molecule executed 1 scenario (1 missing files)"
                            ],
                            "zuul_log_id": "0242ac17-0010-2a5f-447f-000000000007-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:07.033762Z",
                            "start": "2026-06-30T18:36:00.454513Z"
                        },
                        "id": "0242ac17-0010-2a5f-447f-000000000007",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 4,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/atmosphere.common/test-playbooks/molecule/post.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:40:51.855075Z",
                    "start": "2026-06-30T18:40:07.807675Z"
                },
                "id": "0242ac17-0010-d0fc-1eec-000000000002",
                "name": "Collect Molecule logs"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/system",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/system",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/system",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/system",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:08.233691Z",
                            "start": "2026-06-30T18:40:07.822287Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000000c",
                        "name": "creating directory for system status"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -x\nsystemd-cgls --full --all --no-pager > /tmp/logs/system/systemd-cgls.txt\nip addr > /tmp/logs/system/ip-addr.txt\nip route > /tmp/logs/system/ip-route.txt\nlsblk > /tmp/logs/system/lsblk.txt\nmount > /tmp/logs/system/mount.txt\ndocker images > /tmp/logs/system/docker-images.txt\nbrctl show > /tmp/logs/system/brctl-show.txt\nps aux --sort=-%mem > /tmp/logs/system/ps.txt\ndpkg -l > /tmp/logs/system/packages.txt\nCONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))\nif [ ! -z \"$CONTAINERS\" ]; then\n  mkdir -p \"/tmp/logs/system/containers\"\n  for CONTAINER in ${CONTAINERS}; do\n    docker logs \"${CONTAINER}\" > \"/tmp/logs/system/containers/${CONTAINER}.txt\"\n  done\nfi",
                            "delta": "0:00:00.088383",
                            "end": "2026-06-30 18:40:08.747209",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -x\nsystemd-cgls --full --all --no-pager > /tmp/logs/system/systemd-cgls.txt\nip addr > /tmp/logs/system/ip-addr.txt\nip route > /tmp/logs/system/ip-route.txt\nlsblk > /tmp/logs/system/lsblk.txt\nmount > /tmp/logs/system/mount.txt\ndocker images > /tmp/logs/system/docker-images.txt\nbrctl show > /tmp/logs/system/brctl-show.txt\nps aux --sort=-%mem > /tmp/logs/system/ps.txt\ndpkg -l > /tmp/logs/system/packages.txt\nCONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))\nif [ ! -z \"$CONTAINERS\" ]; then\n  mkdir -p \"/tmp/logs/system/containers\"\n  for CONTAINER in ${CONTAINERS}; do\n    docker logs \"${CONTAINER}\" > \"/tmp/logs/system/containers/${CONTAINER}.txt\"\n  done\nfi",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000000d-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:08.658826",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "+ systemd-cgls --full --all --no-pager\n+ ip addr\n+ ip route\n+ lsblk\n+ mount\n+ docker images\n/bin/bash: line 7: docker: command not found\n+ brctl show\n/bin/bash: line 8: brctl: command not found\n+ ps aux --sort=-%mem\n+ dpkg -l\n+ CONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))\n++ docker ps -a --format '{{ .Names }}' --filter label=zuul\n/bin/bash: line 11: docker: command not found\n+ '[' '!' -z '' ']'",
                            "stdout_lines": [
                                "+ systemd-cgls --full --all --no-pager",
                                "+ ip addr",
                                "+ ip route",
                                "+ lsblk",
                                "+ mount",
                                "+ docker images",
                                "/bin/bash: line 7: docker: command not found",
                                "+ brctl show",
                                "/bin/bash: line 8: brctl: command not found",
                                "+ ps aux --sort=-%mem",
                                "+ dpkg -l",
                                "+ CONTAINERS=($(docker ps -a --format '{{ .Names }}' --filter label=zuul))",
                                "++ docker ps -a --format '{{ .Names }}' --filter label=zuul",
                                "/bin/bash: line 11: docker: command not found",
                                "+ '[' '!' -z '' ']'"
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000000d-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:08.790151Z",
                            "start": "2026-06-30T18:40:08.265314Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000000d",
                        "name": "Get logs for each host"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/tmp/logs/system /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                            "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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.242:/tmp/logs/system",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "created directory /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller\ncd+++++++++ system/\n>f+++++++++ system/brctl-show.txt\n>f+++++++++ system/docker-images.txt\n>f+++++++++ system/ip-addr.txt\n>f+++++++++ system/ip-route.txt\n>f+++++++++ system/lsblk.txt\n>f+++++++++ system/mount.txt\n>f+++++++++ system/packages.txt\n>f+++++++++ system/ps.txt\n>f+++++++++ system/systemd-cgls.txt\n",
                            "rc": 0,
                            "stdout_lines": [
                                "created directory /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                "cd+++++++++ system/",
                                ">f+++++++++ system/brctl-show.txt",
                                ">f+++++++++ system/docker-images.txt",
                                ">f+++++++++ system/ip-addr.txt",
                                ">f+++++++++ system/ip-route.txt",
                                ">f+++++++++ system/lsblk.txt",
                                ">f+++++++++ system/mount.txt",
                                ">f+++++++++ system/packages.txt",
                                ">f+++++++++ system/ps.txt",
                                ">f+++++++++ system/systemd-cgls.txt"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000000a",
                        "name": "gather-host-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-host-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:09.475028Z",
                            "start": "2026-06-30T18:40:08.797054Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000000e",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "directory",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/tmp/logs/helm/values",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/tmp/logs/helm/values",
                                            "state": "absent"
                                        }
                                    },
                                    "directory": "values",
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/tmp/logs/helm/values",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/tmp/logs/helm/values",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0
                                },
                                {
                                    "ansible_loop_var": "directory",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/tmp/logs/helm/releases",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/tmp/logs/helm/releases",
                                            "state": "absent"
                                        }
                                    },
                                    "directory": "releases",
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/tmp/logs/helm/releases",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/tmp/logs/helm/releases",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:09.965014Z",
                            "start": "2026-06-30T18:40:09.487102Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000012",
                        "name": "creating directory for helm release status"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\n\nfor namespace in $(kubectl get namespaces --no-headers --output custom-columns=\":metadata.name\"); do\n      # get all Helm releases including pending and failed releases\n      for release in $(helm list --all --short --namespace $namespace); do\n              # Make respective directories only when a Helm release actually exists in the namespace\n              # to prevent uploading a bunch of empty directories for namespaces without a Helm release.\n              mkdir -p /tmp/logs/helm/releases/$namespace\n              mkdir -p /tmp/logs/helm/values/$namespace\n\n              helm status $release --namespace $namespace >> /tmp/logs/helm/releases/$namespace/$release.txt\n              helm get values $release --namespace $namespace --all >> /tmp/logs/helm/values/$namespace/$release.yaml\n      done\ndone",
                            "delta": "0:00:01.363503",
                            "end": "2026-06-30 18:40:11.598841",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\n\nfor namespace in $(kubectl get namespaces --no-headers --output custom-columns=\":metadata.name\"); do\n      # get all Helm releases including pending and failed releases\n      for release in $(helm list --all --short --namespace $namespace); do\n              # Make respective directories only when a Helm release actually exists in the namespace\n              # to prevent uploading a bunch of empty directories for namespaces without a Helm release.\n              mkdir -p /tmp/logs/helm/releases/$namespace\n              mkdir -p /tmp/logs/helm/values/$namespace\n\n              helm status $release --namespace $namespace >> /tmp/logs/helm/releases/$namespace/$release.txt\n              helm get values $release --namespace $namespace --all >> /tmp/logs/helm/values/$namespace/$release.yaml\n      done\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000014-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:10.235338",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000014-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:12.019395Z",
                            "start": "2026-06-30T18:40:09.998193Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000014",
                        "name": "Gather get release status for helm charts"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/tmp/logs/helm /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                            "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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.242:/tmp/logs/helm",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ helm/\ncd+++++++++ helm/releases/\ncd+++++++++ helm/releases/envoy-gateway-system/\n>f+++++++++ helm/releases/envoy-gateway-system/envoy-gateway.txt\ncd+++++++++ helm/releases/kube-system/\n>f+++++++++ helm/releases/kube-system/cilium.txt\ncd+++++++++ helm/values/\ncd+++++++++ helm/values/envoy-gateway-system/\n>f+++++++++ helm/values/envoy-gateway-system/envoy-gateway.yaml\ncd+++++++++ helm/values/kube-system/\n>f+++++++++ helm/values/kube-system/cilium.yaml\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ helm/",
                                "cd+++++++++ helm/releases/",
                                "cd+++++++++ helm/releases/envoy-gateway-system/",
                                ">f+++++++++ helm/releases/envoy-gateway-system/envoy-gateway.txt",
                                "cd+++++++++ helm/releases/kube-system/",
                                ">f+++++++++ helm/releases/kube-system/cilium.txt",
                                "cd+++++++++ helm/values/",
                                "cd+++++++++ helm/values/envoy-gateway-system/",
                                ">f+++++++++ helm/values/envoy-gateway-system/envoy-gateway.yaml",
                                "cd+++++++++ helm/values/kube-system/",
                                ">f+++++++++ helm/values/kube-system/cilium.yaml"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000010",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:12.596763Z",
                            "start": "2026-06-30T18:40:12.024567Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000015",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/objects/cluster",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/objects/cluster",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/objects/cluster",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/objects/cluster",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:12.868059Z",
                            "start": "2026-06-30T18:40:12.609659Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000019",
                        "name": "creating directory for cluster scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nexport OBJECT_TYPE=node,clusterrole,clusterrolebinding,storageclass,namespace\nexport PARALLELISM_FACTOR=2\n\nfunction list_objects () {\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"$@\"' _ {}\n}\nexport -f list_objects\n\nfunction name_objects () {\n  export OBJECT=$1\n  kubectl get ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${OBJECT} ${1#*/}\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export OBJECT=${input[0]}\n  export NAME=${input[1]#*/}\n  echo \"${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/cluster/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nlist_objects |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                            "delta": "0:00:11.315787",
                            "end": "2026-06-30 18:40:24.478810",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nexport OBJECT_TYPE=node,clusterrole,clusterrolebinding,storageclass,namespace\nexport PARALLELISM_FACTOR=2\n\nfunction list_objects () {\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"$@\"' _ {}\n}\nexport -f list_objects\n\nfunction name_objects () {\n  export OBJECT=$1\n  kubectl get ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${OBJECT} ${1#*/}\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export OBJECT=${input[0]}\n  export NAME=${input[1]#*/}\n  echo \"${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/cluster/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nlist_objects |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000001a-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:13.163023",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nnode/controller\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nclusterrole/admin\nclusterrole/cilium\nclusterrole/cilium-operator\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nclusterrole/cluster-admin\nclusterrole/edit\nclusterrole/envoy-gateway-gateway-helm-certgen:envoy-gateway-system\nclusterrole/envoy-gateway-gateway-helm-envoy-gateway-role\nclusterrole/kubeadm:get-nodes\nclusterrole/secretgen-controller-cluster-role\nclusterrole/system:aggregate-to-admin\nclusterrole/system:aggregate-to-edit\nclusterrole/system:aggregate-to-view\nclusterrole/system:auth-delegator\nclusterrole/system:basic-user\nclusterrole/system:certificates.k8s.io:certificatesigningrequests:nodeclient\nclusterrole/system:certificates.k8s.io:certificatesigningrequests:selfnodeclient\nclusterrole/system:certificates.k8s.io:kube-apiserver-client-approver\nclusterrole/system:certificates.k8s.io:kube-apiserver-client-kubelet-approver\nclusterrole/system:certificates.k8s.io:kubelet-serving-approver\nclusterrole/system:certificates.k8s.io:legacy-unknown-approver\nclusterrole/system:controller:attachdetach-controller\nclusterrole/system:controller:certificate-controller\nclusterrole/system:controller:clusterrole-aggregation-controller\nclusterrole/system:controller:cronjob-controller\nclusterrole/system:controller:daemon-set-controller\nclusterrole/system:controller:deployment-controller\nclusterrolebinding/cilium\nclusterrole/system:controller:disruption-controller\nclusterrole/system:controller:endpoint-controller\nclusterrolebinding/cilium-operator\nclusterrole/system:controller:endpointslice-controller\nclusterrolebinding/cluster-admin\nclusterrole/system:controller:endpointslicemirroring-controller\nclusterrolebinding/envoy-gateway-gateway-helm-certgen:envoy-gateway-system\nclusterrole/system:controller:ephemeral-volume-controller\nclusterrolebinding/envoy-gateway-gateway-helm-envoy-gateway-rolebinding\nclusterrole/system:controller:expand-controller\nclusterrolebinding/kubeadm:get-nodes\nclusterrole/system:controller:generic-garbage-collector\nclusterrole/system:controller:horizontal-pod-autoscaler\nclusterrolebinding/kubeadm:kubelet-bootstrap\nclusterrole/system:controller:job-controller\nclusterrolebinding/kubeadm:node-autoapprove-bootstrap\nclusterrole/system:controller:namespace-controller\nclusterrolebinding/kubeadm:node-autoapprove-certificate-rotation\nclusterrole/system:controller:node-controller\nclusterrolebinding/kubeadm:node-proxier\nclusterrole/system:controller:persistent-volume-binder\nclusterrolebinding/secretgen-controller-cluster-role-binding\nclusterrole/system:controller:pod-garbage-collector\nclusterrolebinding/system:basic-user\nclusterrole/system:controller:pv-protection-controller\nclusterrolebinding/system:controller:attachdetach-controller\nclusterrole/system:controller:pvc-protection-controller\nclusterrole/system:controller:replicaset-controller\nclusterrolebinding/system:controller:certificate-controller\nclusterrole/system:controller:replication-controller\nclusterrole/system:controller:resourcequota-controller\nclusterrolebinding/system:controller:clusterrole-aggregation-controller\nclusterrole/system:controller:root-ca-cert-publisher\nclusterrolebinding/system:controller:cronjob-controller\nclusterrole/system:controller:route-controller\nclusterrolebinding/system:controller:daemon-set-controller\nclusterrole/system:controller:service-account-controller\nclusterrolebinding/system:controller:deployment-controller\nclusterrole/system:controller:service-controller\nclusterrolebinding/system:controller:disruption-controller\nclusterrole/system:controller:statefulset-controller\nclusterrole/system:controller:ttl-after-finished-controller\nclusterrole/system:controller:ttl-controller\nclusterrolebinding/system:controller:endpoint-controller\nclusterrole/system:coredns\nclusterrolebinding/system:controller:endpointslice-controller\nclusterrole/system:discovery\nclusterrolebinding/system:controller:endpointslicemirroring-controller\nclusterrole/system:heapster\nclusterrolebinding/system:controller:ephemeral-volume-controller\nclusterrole/system:kube-aggregator\nclusterrolebinding/system:controller:expand-controller\nclusterrole/system:kube-controller-manager\nclusterrolebinding/system:controller:generic-garbage-collector\nclusterrole/system:kube-dns\nclusterrolebinding/system:controller:horizontal-pod-autoscaler\nclusterrole/system:kube-scheduler\nclusterrolebinding/system:controller:job-controller\nclusterrole/system:kubelet-api-admin\nclusterrolebinding/system:controller:namespace-controller\nclusterrole/system:monitoring\nclusterrolebinding/system:controller:node-controller\nclusterrole/system:node\nclusterrolebinding/system:controller:persistent-volume-binder\nclusterrolebinding/system:controller:pod-garbage-collector\nclusterrole/system:node-bootstrapper\nclusterrolebinding/system:controller:pv-protection-controller\nclusterrole/system:node-problem-detector\nclusterrolebinding/system:controller:pvc-protection-controller\nclusterrole/system:node-proxier\nclusterrolebinding/system:controller:replicaset-controller\nclusterrole/system:persistent-volume-provisioner\nclusterrolebinding/system:controller:replication-controller\nclusterrole/system:public-info-viewer\nclusterrolebinding/system:controller:resourcequota-controller\nclusterrole/system:service-account-issuer-discovery\nclusterrole/system:volume-scheduler\nclusterrolebinding/system:controller:root-ca-cert-publisher\nclusterrolebinding/system:controller:route-controller\nclusterrole/view\nclusterrolebinding/system:controller:service-account-controller\nclusterrolebinding/system:controller:service-controller\nclusterrolebinding/system:controller:statefulset-controller\nclusterrolebinding/system:controller:ttl-after-finished-controller\nclusterrolebinding/system:controller:ttl-controller\nclusterrolebinding/system:coredns\nclusterrolebinding/system:discovery\nclusterrolebinding/system:kube-controller-manager\nclusterrolebinding/system:kube-dns\nclusterrolebinding/system:kube-scheduler\nclusterrolebinding/system:monitoring\nclusterrolebinding/system:node\nclusterrolebinding/system:node-proxier\nclusterrolebinding/system:public-info-viewer\nclusterrolebinding/system:service-account-issuer-discovery\nclusterrolebinding/system:volume-scheduler\nnamespace/default\nnamespace/envoy-gateway-system\nnamespace/kube-node-lease\nnamespace/kube-public\nnamespace/kube-system\nnamespace/secretgen-controller",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "node/controller",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "clusterrole/admin",
                                "clusterrole/cilium",
                                "clusterrole/cilium-operator",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "clusterrole/cluster-admin",
                                "clusterrole/edit",
                                "clusterrole/envoy-gateway-gateway-helm-certgen:envoy-gateway-system",
                                "clusterrole/envoy-gateway-gateway-helm-envoy-gateway-role",
                                "clusterrole/kubeadm:get-nodes",
                                "clusterrole/secretgen-controller-cluster-role",
                                "clusterrole/system:aggregate-to-admin",
                                "clusterrole/system:aggregate-to-edit",
                                "clusterrole/system:aggregate-to-view",
                                "clusterrole/system:auth-delegator",
                                "clusterrole/system:basic-user",
                                "clusterrole/system:certificates.k8s.io:certificatesigningrequests:nodeclient",
                                "clusterrole/system:certificates.k8s.io:certificatesigningrequests:selfnodeclient",
                                "clusterrole/system:certificates.k8s.io:kube-apiserver-client-approver",
                                "clusterrole/system:certificates.k8s.io:kube-apiserver-client-kubelet-approver",
                                "clusterrole/system:certificates.k8s.io:kubelet-serving-approver",
                                "clusterrole/system:certificates.k8s.io:legacy-unknown-approver",
                                "clusterrole/system:controller:attachdetach-controller",
                                "clusterrole/system:controller:certificate-controller",
                                "clusterrole/system:controller:clusterrole-aggregation-controller",
                                "clusterrole/system:controller:cronjob-controller",
                                "clusterrole/system:controller:daemon-set-controller",
                                "clusterrole/system:controller:deployment-controller",
                                "clusterrolebinding/cilium",
                                "clusterrole/system:controller:disruption-controller",
                                "clusterrole/system:controller:endpoint-controller",
                                "clusterrolebinding/cilium-operator",
                                "clusterrole/system:controller:endpointslice-controller",
                                "clusterrolebinding/cluster-admin",
                                "clusterrole/system:controller:endpointslicemirroring-controller",
                                "clusterrolebinding/envoy-gateway-gateway-helm-certgen:envoy-gateway-system",
                                "clusterrole/system:controller:ephemeral-volume-controller",
                                "clusterrolebinding/envoy-gateway-gateway-helm-envoy-gateway-rolebinding",
                                "clusterrole/system:controller:expand-controller",
                                "clusterrolebinding/kubeadm:get-nodes",
                                "clusterrole/system:controller:generic-garbage-collector",
                                "clusterrole/system:controller:horizontal-pod-autoscaler",
                                "clusterrolebinding/kubeadm:kubelet-bootstrap",
                                "clusterrole/system:controller:job-controller",
                                "clusterrolebinding/kubeadm:node-autoapprove-bootstrap",
                                "clusterrole/system:controller:namespace-controller",
                                "clusterrolebinding/kubeadm:node-autoapprove-certificate-rotation",
                                "clusterrole/system:controller:node-controller",
                                "clusterrolebinding/kubeadm:node-proxier",
                                "clusterrole/system:controller:persistent-volume-binder",
                                "clusterrolebinding/secretgen-controller-cluster-role-binding",
                                "clusterrole/system:controller:pod-garbage-collector",
                                "clusterrolebinding/system:basic-user",
                                "clusterrole/system:controller:pv-protection-controller",
                                "clusterrolebinding/system:controller:attachdetach-controller",
                                "clusterrole/system:controller:pvc-protection-controller",
                                "clusterrole/system:controller:replicaset-controller",
                                "clusterrolebinding/system:controller:certificate-controller",
                                "clusterrole/system:controller:replication-controller",
                                "clusterrole/system:controller:resourcequota-controller",
                                "clusterrolebinding/system:controller:clusterrole-aggregation-controller",
                                "clusterrole/system:controller:root-ca-cert-publisher",
                                "clusterrolebinding/system:controller:cronjob-controller",
                                "clusterrole/system:controller:route-controller",
                                "clusterrolebinding/system:controller:daemon-set-controller",
                                "clusterrole/system:controller:service-account-controller",
                                "clusterrolebinding/system:controller:deployment-controller",
                                "clusterrole/system:controller:service-controller",
                                "clusterrolebinding/system:controller:disruption-controller",
                                "clusterrole/system:controller:statefulset-controller",
                                "clusterrole/system:controller:ttl-after-finished-controller",
                                "clusterrole/system:controller:ttl-controller",
                                "clusterrolebinding/system:controller:endpoint-controller",
                                "clusterrole/system:coredns",
                                "clusterrolebinding/system:controller:endpointslice-controller",
                                "clusterrole/system:discovery",
                                "clusterrolebinding/system:controller:endpointslicemirroring-controller",
                                "clusterrole/system:heapster",
                                "clusterrolebinding/system:controller:ephemeral-volume-controller",
                                "clusterrole/system:kube-aggregator",
                                "clusterrolebinding/system:controller:expand-controller",
                                "clusterrole/system:kube-controller-manager",
                                "clusterrolebinding/system:controller:generic-garbage-collector",
                                "clusterrole/system:kube-dns",
                                "clusterrolebinding/system:controller:horizontal-pod-autoscaler",
                                "clusterrole/system:kube-scheduler",
                                "clusterrolebinding/system:controller:job-controller",
                                "clusterrole/system:kubelet-api-admin",
                                "clusterrolebinding/system:controller:namespace-controller",
                                "clusterrole/system:monitoring",
                                "clusterrolebinding/system:controller:node-controller",
                                "clusterrole/system:node",
                                "clusterrolebinding/system:controller:persistent-volume-binder",
                                "clusterrolebinding/system:controller:pod-garbage-collector",
                                "clusterrole/system:node-bootstrapper",
                                "clusterrolebinding/system:controller:pv-protection-controller",
                                "clusterrole/system:node-problem-detector",
                                "clusterrolebinding/system:controller:pvc-protection-controller",
                                "clusterrole/system:node-proxier",
                                "clusterrolebinding/system:controller:replicaset-controller",
                                "clusterrole/system:persistent-volume-provisioner",
                                "clusterrolebinding/system:controller:replication-controller",
                                "clusterrole/system:public-info-viewer",
                                "clusterrolebinding/system:controller:resourcequota-controller",
                                "clusterrole/system:service-account-issuer-discovery",
                                "clusterrole/system:volume-scheduler",
                                "clusterrolebinding/system:controller:root-ca-cert-publisher",
                                "clusterrolebinding/system:controller:route-controller",
                                "clusterrole/view",
                                "clusterrolebinding/system:controller:service-account-controller",
                                "clusterrolebinding/system:controller:service-controller",
                                "clusterrolebinding/system:controller:statefulset-controller",
                                "clusterrolebinding/system:controller:ttl-after-finished-controller",
                                "clusterrolebinding/system:controller:ttl-controller",
                                "clusterrolebinding/system:coredns",
                                "clusterrolebinding/system:discovery",
                                "clusterrolebinding/system:kube-controller-manager",
                                "clusterrolebinding/system:kube-dns",
                                "clusterrolebinding/system:kube-scheduler",
                                "clusterrolebinding/system:monitoring",
                                "clusterrolebinding/system:node",
                                "clusterrolebinding/system:node-proxier",
                                "clusterrolebinding/system:public-info-viewer",
                                "clusterrolebinding/system:service-account-issuer-discovery",
                                "clusterrolebinding/system:volume-scheduler",
                                "namespace/default",
                                "namespace/envoy-gateway-system",
                                "namespace/kube-node-lease",
                                "namespace/kube-public",
                                "namespace/kube-system",
                                "namespace/secretgen-controller"
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000001a-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:24.962190Z",
                            "start": "2026-06-30T18:40:12.934452Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000001a",
                        "name": "Gathering descriptions for cluster scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/objects/namespaced",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/objects/namespaced",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/objects/namespaced",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/objects/namespaced",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:25.208519Z",
                            "start": "2026-06-30T18:40:24.969960Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000001b",
                        "name": "creating directory for namespace scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nexport OBJECT_TYPE=configmaps,cronjobs,daemonsets,deployment,endpoints,ingresses,jobs,networkpolicies,pods,podsecuritypolicies,persistentvolumeclaims,rolebindings,roles,secrets,serviceaccounts,services,statefulsets\nexport PARALLELISM_FACTOR=2\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\n\nfunction list_namespaced_objects () {\n  export NAMESPACE=$1\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} $@\"' _ {}\n}\nexport -f list_namespaced_objects\n\nfunction name_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  kubectl get -n ${NAMESPACE} ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} ${OBJECT} $@\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  export NAME=${input[2]#*/}\n  echo \"${NAMESPACE}/${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/namespaced/${NAMESPACE}/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get -n ${NAMESPACE} ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe -n ${NAMESPACE} ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nget_namespaces |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'list_namespaced_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                            "delta": "0:00:13.082624",
                            "end": "2026-06-30 18:40:38.575405",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nexport OBJECT_TYPE=configmaps,cronjobs,daemonsets,deployment,endpoints,ingresses,jobs,networkpolicies,pods,podsecuritypolicies,persistentvolumeclaims,rolebindings,roles,secrets,serviceaccounts,services,statefulsets\nexport PARALLELISM_FACTOR=2\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\n\nfunction list_namespaced_objects () {\n  export NAMESPACE=$1\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} $@\"' _ {}\n}\nexport -f list_namespaced_objects\n\nfunction name_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  kubectl get -n ${NAMESPACE} ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} ${OBJECT} $@\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  export NAME=${input[2]#*/}\n  echo \"${NAMESPACE}/${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/namespaced/${NAMESPACE}/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get -n ${NAMESPACE} ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe -n ${NAMESPACE} ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nget_namespaces |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'list_namespaced_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000001c-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:25.492781",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/configmaps/envoy-gateway-config\ndefault/configmaps/kube-root-ca.crt\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/configmaps/kube-root-ca.crt\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\ndefault/endpoints/kubernetes\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/deployment/envoy-gateway\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/endpoints/envoy-gateway\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nerror: the server doesn't have a resource type \"podsecuritypolicies\"\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/pods/envoy-gateway-78446f96c9-4vkv7\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nerror: the server doesn't have a resource type \"podsecuritypolicies\"\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-certgen\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-infra-manager\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-leader-election-rolebinding\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\ndefault/secrets/test-password\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\ndefault/serviceaccounts/default\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/roles/envoy-gateway-gateway-helm-certgen\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/roles/envoy-gateway-gateway-helm-infra-manager\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/roles/envoy-gateway-gateway-helm-leader-election-role\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/serviceaccounts/default\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/serviceaccounts/envoy-gateway\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/serviceaccounts/envoy-gateway-gateway-helm-certgen\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\ndefault/services/kubernetes\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/secrets/envoy\nenvoy-gateway-system/secrets/envoy-gateway\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nerror: the server doesn't have a resource type \"podsecuritypolicies\"\nenvoy-gateway-system/secrets/envoy-oidc-hmac\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/secrets/envoy-rate-limit\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/secrets/sh.helm.release.v1.envoy-gateway.v1\nerror: the server doesn't have a resource type \"podsecuritypolicies\"\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nenvoy-gateway-system/services/envoy-gateway\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-node-lease/configmaps/kube-root-ca.crt\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/configmaps/cluster-info\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/configmaps/kube-root-ca.crt\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/rolebindings/kubeadm:bootstrap-signer-clusterinfo\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/rolebindings/system:controller:bootstrap-signer\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-node-lease/serviceaccounts/default\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/roles/kubeadm:bootstrap-signer-clusterinfo\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/roles/system:controller:bootstrap-signer\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-public/serviceaccounts/default\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/configmaps/cilium-config\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/configmaps/coredns\nerror: the server doesn't have a resource type \"podsecuritypolicies\"\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/configmaps/extension-apiserver-authentication\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/configmaps/kube-apiserver-legacy-service-account-token-tracking\nkube-system/configmaps/kube-proxy\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/configmaps/kube-root-ca.crt\nkube-system/configmaps/kubeadm-config\nerror: the server doesn't have a resource type \"podsecuritypolicies\"\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/configmaps/kubelet-config\nkube-system/daemonsets/cilium\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/daemonsets/kube-proxy\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nsecretgen-controller/configmaps/kube-root-ca.crt\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nkube-system/deployment/cilium-operator\nkube-system/deployment/coredns\nkube-system/endpoints/kube-dns\nsecretgen-controller/deployment/secretgen-controller\nkube-system/pods/cilium-operator-7fcd8d6ffd-rnfn8\nkube-system/pods/cilium-wprkr\nkube-system/pods/coredns-5dd5756b68-2kp5r\nkube-system/pods/coredns-77cccfdc44-524xt\nkube-system/pods/coredns-77cccfdc44-cfxp8\nkube-system/pods/etcd-controller\nkube-system/pods/kube-apiserver-controller\nkube-system/pods/kube-controller-manager-controller\nkube-system/pods/kube-proxy-r75wb\nkube-system/pods/kube-scheduler-controller\nkube-system/pods/kube-vip-controller\nkube-system/rolebindings/cilium-config-agent\nkube-system/rolebindings/kube-proxy\nkube-system/rolebindings/kubeadm:kubeadm-certs\nkube-system/rolebindings/kubeadm:kubelet-config\nkube-system/rolebindings/kubeadm:nodes-kubeadm-config\nkube-system/rolebindings/system::extension-apiserver-authentication-reader\nkube-system/rolebindings/system::leader-locking-kube-controller-manager\nkube-system/rolebindings/system::leader-locking-kube-scheduler\nkube-system/rolebindings/system:controller:bootstrap-signer\nkube-system/rolebindings/system:controller:cloud-provider\nkube-system/rolebindings/system:controller:token-cleaner\nkube-system/roles/cilium-config-agent\nkube-system/roles/extension-apiserver-authentication-reader\nkube-system/roles/kube-proxy\nkube-system/roles/kubeadm:kubeadm-certs\nkube-system/roles/kubeadm:kubelet-config\nkube-system/roles/kubeadm:nodes-kubeadm-config\nkube-system/roles/system::leader-locking-kube-controller-manager\nkube-system/roles/system::leader-locking-kube-scheduler\nkube-system/roles/system:controller:bootstrap-signer\nkube-system/roles/system:controller:cloud-provider\nsecretgen-controller/pods/secretgen-controller-ffb97c6dc-z4ssl\nkube-system/roles/system:controller:token-cleaner\nkube-system/secrets/bootstrap-token-6q4948\nkube-system/secrets/bootstrap-token-kjk29x\nkube-system/secrets/kubeadm-certs\nkube-system/secrets/sh.helm.release.v1.cilium.v1\nkube-system/serviceaccounts/attachdetach-controller\nkube-system/serviceaccounts/bootstrap-signer\nkube-system/serviceaccounts/certificate-controller\nkube-system/serviceaccounts/cilium\nkube-system/serviceaccounts/cilium-operator\nkube-system/serviceaccounts/clusterrole-aggregation-controller\nkube-system/serviceaccounts/coredns\nkube-system/serviceaccounts/cronjob-controller\nkube-system/serviceaccounts/daemon-set-controller\nkube-system/serviceaccounts/default\nkube-system/serviceaccounts/deployment-controller\nkube-system/serviceaccounts/disruption-controller\nkube-system/serviceaccounts/endpoint-controller\nkube-system/serviceaccounts/endpointslice-controller\nkube-system/serviceaccounts/endpointslicemirroring-controller\nkube-system/serviceaccounts/ephemeral-volume-controller\nkube-system/serviceaccounts/expand-controller\nkube-system/serviceaccounts/generic-garbage-collector\nkube-system/serviceaccounts/horizontal-pod-autoscaler\nkube-system/serviceaccounts/job-controller\nkube-system/serviceaccounts/kube-proxy\nkube-system/serviceaccounts/namespace-controller\nkube-system/serviceaccounts/node-controller\nkube-system/serviceaccounts/persistent-volume-binder\nkube-system/serviceaccounts/pod-garbage-collector\nkube-system/serviceaccounts/pv-protection-controller\nkube-system/serviceaccounts/pvc-protection-controller\nkube-system/serviceaccounts/replicaset-controller\nkube-system/serviceaccounts/replication-controller\nkube-system/serviceaccounts/resourcequota-controller\nkube-system/serviceaccounts/root-ca-cert-publisher\nkube-system/serviceaccounts/service-account-controller\nkube-system/serviceaccounts/service-controller\nkube-system/serviceaccounts/statefulset-controller\nkube-system/serviceaccounts/token-cleaner\nkube-system/serviceaccounts/ttl-after-finished-controller\nkube-system/serviceaccounts/ttl-controller\nkube-system/services/kube-dns\nsecretgen-controller/serviceaccounts/default\nsecretgen-controller/serviceaccounts/secretgen-controller-sa",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/configmaps/envoy-gateway-config",
                                "default/configmaps/kube-root-ca.crt",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/configmaps/kube-root-ca.crt",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "default/endpoints/kubernetes",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/deployment/envoy-gateway",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/endpoints/envoy-gateway",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "error: the server doesn't have a resource type \"podsecuritypolicies\"",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/pods/envoy-gateway-78446f96c9-4vkv7",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "error: the server doesn't have a resource type \"podsecuritypolicies\"",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-certgen",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-infra-manager",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-leader-election-rolebinding",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "default/secrets/test-password",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "default/serviceaccounts/default",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/roles/envoy-gateway-gateway-helm-certgen",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/roles/envoy-gateway-gateway-helm-infra-manager",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/roles/envoy-gateway-gateway-helm-leader-election-role",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/serviceaccounts/default",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/serviceaccounts/envoy-gateway",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/serviceaccounts/envoy-gateway-gateway-helm-certgen",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "default/services/kubernetes",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/secrets/envoy",
                                "envoy-gateway-system/secrets/envoy-gateway",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "error: the server doesn't have a resource type \"podsecuritypolicies\"",
                                "envoy-gateway-system/secrets/envoy-oidc-hmac",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/secrets/envoy-rate-limit",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/secrets/sh.helm.release.v1.envoy-gateway.v1",
                                "error: the server doesn't have a resource type \"podsecuritypolicies\"",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "envoy-gateway-system/services/envoy-gateway",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-node-lease/configmaps/kube-root-ca.crt",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/configmaps/cluster-info",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/configmaps/kube-root-ca.crt",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/rolebindings/kubeadm:bootstrap-signer-clusterinfo",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/rolebindings/system:controller:bootstrap-signer",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-node-lease/serviceaccounts/default",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/roles/kubeadm:bootstrap-signer-clusterinfo",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/roles/system:controller:bootstrap-signer",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-public/serviceaccounts/default",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/configmaps/cilium-config",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/configmaps/coredns",
                                "error: the server doesn't have a resource type \"podsecuritypolicies\"",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/configmaps/extension-apiserver-authentication",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/configmaps/kube-apiserver-legacy-service-account-token-tracking",
                                "kube-system/configmaps/kube-proxy",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/configmaps/kube-root-ca.crt",
                                "kube-system/configmaps/kubeadm-config",
                                "error: the server doesn't have a resource type \"podsecuritypolicies\"",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/configmaps/kubelet-config",
                                "kube-system/daemonsets/cilium",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/daemonsets/kube-proxy",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "secretgen-controller/configmaps/kube-root-ca.crt",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "kube-system/deployment/cilium-operator",
                                "kube-system/deployment/coredns",
                                "kube-system/endpoints/kube-dns",
                                "secretgen-controller/deployment/secretgen-controller",
                                "kube-system/pods/cilium-operator-7fcd8d6ffd-rnfn8",
                                "kube-system/pods/cilium-wprkr",
                                "kube-system/pods/coredns-5dd5756b68-2kp5r",
                                "kube-system/pods/coredns-77cccfdc44-524xt",
                                "kube-system/pods/coredns-77cccfdc44-cfxp8",
                                "kube-system/pods/etcd-controller",
                                "kube-system/pods/kube-apiserver-controller",
                                "kube-system/pods/kube-controller-manager-controller",
                                "kube-system/pods/kube-proxy-r75wb",
                                "kube-system/pods/kube-scheduler-controller",
                                "kube-system/pods/kube-vip-controller",
                                "kube-system/rolebindings/cilium-config-agent",
                                "kube-system/rolebindings/kube-proxy",
                                "kube-system/rolebindings/kubeadm:kubeadm-certs",
                                "kube-system/rolebindings/kubeadm:kubelet-config",
                                "kube-system/rolebindings/kubeadm:nodes-kubeadm-config",
                                "kube-system/rolebindings/system::extension-apiserver-authentication-reader",
                                "kube-system/rolebindings/system::leader-locking-kube-controller-manager",
                                "kube-system/rolebindings/system::leader-locking-kube-scheduler",
                                "kube-system/rolebindings/system:controller:bootstrap-signer",
                                "kube-system/rolebindings/system:controller:cloud-provider",
                                "kube-system/rolebindings/system:controller:token-cleaner",
                                "kube-system/roles/cilium-config-agent",
                                "kube-system/roles/extension-apiserver-authentication-reader",
                                "kube-system/roles/kube-proxy",
                                "kube-system/roles/kubeadm:kubeadm-certs",
                                "kube-system/roles/kubeadm:kubelet-config",
                                "kube-system/roles/kubeadm:nodes-kubeadm-config",
                                "kube-system/roles/system::leader-locking-kube-controller-manager",
                                "kube-system/roles/system::leader-locking-kube-scheduler",
                                "kube-system/roles/system:controller:bootstrap-signer",
                                "kube-system/roles/system:controller:cloud-provider",
                                "secretgen-controller/pods/secretgen-controller-ffb97c6dc-z4ssl",
                                "kube-system/roles/system:controller:token-cleaner",
                                "kube-system/secrets/bootstrap-token-6q4948",
                                "kube-system/secrets/bootstrap-token-kjk29x",
                                "kube-system/secrets/kubeadm-certs",
                                "kube-system/secrets/sh.helm.release.v1.cilium.v1",
                                "kube-system/serviceaccounts/attachdetach-controller",
                                "kube-system/serviceaccounts/bootstrap-signer",
                                "kube-system/serviceaccounts/certificate-controller",
                                "kube-system/serviceaccounts/cilium",
                                "kube-system/serviceaccounts/cilium-operator",
                                "kube-system/serviceaccounts/clusterrole-aggregation-controller",
                                "kube-system/serviceaccounts/coredns",
                                "kube-system/serviceaccounts/cronjob-controller",
                                "kube-system/serviceaccounts/daemon-set-controller",
                                "kube-system/serviceaccounts/default",
                                "kube-system/serviceaccounts/deployment-controller",
                                "kube-system/serviceaccounts/disruption-controller",
                                "kube-system/serviceaccounts/endpoint-controller",
                                "kube-system/serviceaccounts/endpointslice-controller",
                                "kube-system/serviceaccounts/endpointslicemirroring-controller",
                                "kube-system/serviceaccounts/ephemeral-volume-controller",
                                "kube-system/serviceaccounts/expand-controller",
                                "kube-system/serviceaccounts/generic-garbage-collector",
                                "kube-system/serviceaccounts/horizontal-pod-autoscaler",
                                "kube-system/serviceaccounts/job-controller",
                                "kube-system/serviceaccounts/kube-proxy",
                                "kube-system/serviceaccounts/namespace-controller",
                                "kube-system/serviceaccounts/node-controller",
                                "kube-system/serviceaccounts/persistent-volume-binder",
                                "kube-system/serviceaccounts/pod-garbage-collector",
                                "kube-system/serviceaccounts/pv-protection-controller",
                                "kube-system/serviceaccounts/pvc-protection-controller",
                                "kube-system/serviceaccounts/replicaset-controller",
                                "kube-system/serviceaccounts/replication-controller",
                                "kube-system/serviceaccounts/resourcequota-controller",
                                "kube-system/serviceaccounts/root-ca-cert-publisher",
                                "kube-system/serviceaccounts/service-account-controller",
                                "kube-system/serviceaccounts/service-controller",
                                "kube-system/serviceaccounts/statefulset-controller",
                                "kube-system/serviceaccounts/token-cleaner",
                                "kube-system/serviceaccounts/ttl-after-finished-controller",
                                "kube-system/serviceaccounts/ttl-controller",
                                "kube-system/services/kube-dns",
                                "secretgen-controller/serviceaccounts/default",
                                "secretgen-controller/serviceaccounts/secretgen-controller-sa"
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000001c-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:38.775456Z",
                            "start": "2026-06-30T18:40:25.239284Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000001c",
                        "name": "Gathering descriptions for namespace scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/tmp/logs/objects /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                            "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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.242:/tmp/logs/objects",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ objects/\ncd+++++++++ objects/cluster/\ncd+++++++++ objects/cluster/clusterrole/\n>f+++++++++ objects/cluster/clusterrole/admin.txt\n>f+++++++++ objects/cluster/clusterrole/admin.yaml\n>f+++++++++ objects/cluster/clusterrole/cilium-operator.txt\n>f+++++++++ objects/cluster/clusterrole/cilium-operator.yaml\n>f+++++++++ objects/cluster/clusterrole/cilium.txt\n>f+++++++++ objects/cluster/clusterrole/cilium.yaml\n>f+++++++++ objects/cluster/clusterrole/cluster-admin.txt\n>f+++++++++ objects/cluster/clusterrole/cluster-admin.yaml\n>f+++++++++ objects/cluster/clusterrole/edit.txt\n>f+++++++++ objects/cluster/clusterrole/edit.yaml\n>f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.txt\n>f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.yaml\n>f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-envoy-gateway-role.txt\n>f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-envoy-gateway-role.yaml\n>f+++++++++ objects/cluster/clusterrole/kubeadm:get-nodes.txt\n>f+++++++++ objects/cluster/clusterrole/kubeadm:get-nodes.yaml\n>f+++++++++ objects/cluster/clusterrole/secretgen-controller-cluster-role.txt\n>f+++++++++ objects/cluster/clusterrole/secretgen-controller-cluster-role.yaml\n>f+++++++++ objects/cluster/clusterrole/system:aggregate-to-admin.txt\n>f+++++++++ objects/cluster/clusterrole/system:aggregate-to-admin.yaml\n>f+++++++++ objects/cluster/clusterrole/system:aggregate-to-edit.txt\n>f+++++++++ objects/cluster/clusterrole/system:aggregate-to-edit.yaml\n>f+++++++++ objects/cluster/clusterrole/system:aggregate-to-view.txt\n>f+++++++++ objects/cluster/clusterrole/system:aggregate-to-view.yaml\n>f+++++++++ objects/cluster/clusterrole/system:auth-delegator.txt\n>f+++++++++ objects/cluster/clusterrole/system:auth-delegator.yaml\n>f+++++++++ objects/cluster/clusterrole/system:basic-user.txt\n>f+++++++++ objects/cluster/clusterrole/system:basic-user.yaml\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:nodeclient.txt\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:nodeclient.yaml\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:selfnodeclient.txt\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:selfnodeclient.yaml\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-approver.txt\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-approver.yaml\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-kubelet-approver.txt\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-kubelet-approver.yaml\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kubelet-serving-approver.txt\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kubelet-serving-approver.yaml\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:legacy-unknown-approver.txt\n>f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:legacy-unknown-approver.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:attachdetach-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:attachdetach-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:certificate-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:certificate-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:clusterrole-aggregation-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:clusterrole-aggregation-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:cronjob-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:cronjob-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:daemon-set-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:daemon-set-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:deployment-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:deployment-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:disruption-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:disruption-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:endpoint-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:endpoint-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:endpointslice-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:endpointslice-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:endpointslicemirroring-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:endpointslicemirroring-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:ephemeral-volume-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:ephemeral-volume-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:expand-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:expand-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:generic-garbage-collector.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:generic-garbage-collector.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:horizontal-pod-autoscaler.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:horizontal-pod-autoscaler.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:job-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:job-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:namespace-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:namespace-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:node-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:node-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:persistent-volume-binder.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:persistent-volume-binder.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:pod-garbage-collector.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:pod-garbage-collector.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:pv-protection-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:pv-protection-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:pvc-protection-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:pvc-protection-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:replicaset-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:replicaset-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:replication-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:replication-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:resourcequota-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:resourcequota-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:root-ca-cert-publisher.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:root-ca-cert-publisher.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:route-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:route-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:service-account-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:service-account-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:service-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:service-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:statefulset-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:statefulset-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:ttl-after-finished-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:ttl-after-finished-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:controller:ttl-controller.txt\n>f+++++++++ objects/cluster/clusterrole/system:controller:ttl-controller.yaml\n>f+++++++++ objects/cluster/clusterrole/system:coredns.txt\n>f+++++++++ objects/cluster/clusterrole/system:coredns.yaml\n>f+++++++++ objects/cluster/clusterrole/system:discovery.txt\n>f+++++++++ objects/cluster/clusterrole/system:discovery.yaml\n>f+++++++++ objects/cluster/clusterrole/system:heapster.txt\n>f+++++++++ objects/cluster/clusterrole/system:heapster.yaml\n>f+++++++++ objects/cluster/clusterrole/system:kube-aggregator.txt\n>f+++++++++ objects/cluster/clusterrole/system:kube-aggregator.yaml\n>f+++++++++ objects/cluster/clusterrole/system:kube-controller-manager.txt\n>f+++++++++ objects/cluster/clusterrole/system:kube-controller-manager.yaml\n>f+++++++++ objects/cluster/clusterrole/system:kube-dns.txt\n>f+++++++++ objects/cluster/clusterrole/system:kube-dns.yaml\n>f+++++++++ objects/cluster/clusterrole/system:kube-scheduler.txt\n>f+++++++++ objects/cluster/clusterrole/system:kube-scheduler.yaml\n>f+++++++++ objects/cluster/clusterrole/system:kubelet-api-admin.txt\n>f+++++++++ objects/cluster/clusterrole/system:kubelet-api-admin.yaml\n>f+++++++++ objects/cluster/clusterrole/system:monitoring.txt\n>f+++++++++ objects/cluster/clusterrole/system:monitoring.yaml\n>f+++++++++ objects/cluster/clusterrole/system:node-bootstrapper.txt\n>f+++++++++ objects/cluster/clusterrole/system:node-bootstrapper.yaml\n>f+++++++++ objects/cluster/clusterrole/system:node-problem-detector.txt\n>f+++++++++ objects/cluster/clusterrole/system:node-problem-detector.yaml\n>f+++++++++ objects/cluster/clusterrole/system:node-proxier.txt\n>f+++++++++ objects/cluster/clusterrole/system:node-proxier.yaml\n>f+++++++++ objects/cluster/clusterrole/system:node.txt\n>f+++++++++ objects/cluster/clusterrole/system:node.yaml\n>f+++++++++ objects/cluster/clusterrole/system:persistent-volume-provisioner.txt\n>f+++++++++ objects/cluster/clusterrole/system:persistent-volume-provisioner.yaml\n>f+++++++++ objects/cluster/clusterrole/system:public-info-viewer.txt\n>f+++++++++ objects/cluster/clusterrole/system:public-info-viewer.yaml\n>f+++++++++ objects/cluster/clusterrole/system:service-account-issuer-discovery.txt\n>f+++++++++ objects/cluster/clusterrole/system:service-account-issuer-discovery.yaml\n>f+++++++++ objects/cluster/clusterrole/system:volume-scheduler.txt\n>f+++++++++ objects/cluster/clusterrole/system:volume-scheduler.yaml\n>f+++++++++ objects/cluster/clusterrole/view.txt\n>f+++++++++ objects/cluster/clusterrole/view.yaml\ncd+++++++++ objects/cluster/clusterrolebinding/\n>f+++++++++ objects/cluster/clusterrolebinding/cilium-operator.txt\n>f+++++++++ objects/cluster/clusterrolebinding/cilium-operator.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/cilium.txt\n>f+++++++++ objects/cluster/clusterrolebinding/cilium.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/cluster-admin.txt\n>f+++++++++ objects/cluster/clusterrolebinding/cluster-admin.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.txt\n>f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-envoy-gateway-rolebinding.txt\n>f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-envoy-gateway-rolebinding.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:get-nodes.txt\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:get-nodes.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:kubelet-bootstrap.txt\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:kubelet-bootstrap.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-bootstrap.txt\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-bootstrap.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-certificate-rotation.txt\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-certificate-rotation.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-proxier.txt\n>f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-proxier.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/secretgen-controller-cluster-role-binding.txt\n>f+++++++++ objects/cluster/clusterrolebinding/secretgen-controller-cluster-role-binding.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:basic-user.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:basic-user.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:attachdetach-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:attachdetach-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:certificate-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:certificate-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:clusterrole-aggregation-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:clusterrole-aggregation-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:cronjob-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:cronjob-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:daemon-set-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:daemon-set-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:deployment-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:deployment-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:disruption-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:disruption-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpoint-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpoint-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslice-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslice-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslicemirroring-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslicemirroring-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:ephemeral-volume-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:ephemeral-volume-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:expand-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:expand-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:generic-garbage-collector.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:generic-garbage-collector.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:horizontal-pod-autoscaler.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:horizontal-pod-autoscaler.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:job-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:job-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:namespace-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:namespace-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:node-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:node-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:persistent-volume-binder.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:persistent-volume-binder.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:pod-garbage-collector.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:pod-garbage-collector.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:pv-protection-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:pv-protection-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:pvc-protection-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:pvc-protection-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:replicaset-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:replicaset-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:replication-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:replication-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:resourcequota-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:resourcequota-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:root-ca-cert-publisher.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:root-ca-cert-publisher.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:route-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:route-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-account-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-account-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:statefulset-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:statefulset-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-after-finished-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-after-finished-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-controller.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-controller.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:coredns.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:coredns.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:discovery.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:discovery.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:kube-controller-manager.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:kube-controller-manager.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:kube-dns.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:kube-dns.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:kube-scheduler.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:kube-scheduler.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:monitoring.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:monitoring.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:node-proxier.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:node-proxier.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:node.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:node.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:public-info-viewer.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:public-info-viewer.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:service-account-issuer-discovery.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:service-account-issuer-discovery.yaml\n>f+++++++++ objects/cluster/clusterrolebinding/system:volume-scheduler.txt\n>f+++++++++ objects/cluster/clusterrolebinding/system:volume-scheduler.yaml\ncd+++++++++ objects/cluster/namespace/\n>f+++++++++ objects/cluster/namespace/default.txt\n>f+++++++++ objects/cluster/namespace/default.yaml\n>f+++++++++ objects/cluster/namespace/envoy-gateway-system.txt\n>f+++++++++ objects/cluster/namespace/envoy-gateway-system.yaml\n>f+++++++++ objects/cluster/namespace/kube-node-lease.txt\n>f+++++++++ objects/cluster/namespace/kube-node-lease.yaml\n>f+++++++++ objects/cluster/namespace/kube-public.txt\n>f+++++++++ objects/cluster/namespace/kube-public.yaml\n>f+++++++++ objects/cluster/namespace/kube-system.txt\n>f+++++++++ objects/cluster/namespace/kube-system.yaml\n>f+++++++++ objects/cluster/namespace/secretgen-controller.txt\n>f+++++++++ objects/cluster/namespace/secretgen-controller.yaml\ncd+++++++++ objects/cluster/node/\n>f+++++++++ objects/cluster/node/controller.txt\n>f+++++++++ objects/cluster/node/controller.yaml\ncd+++++++++ objects/namespaced/\ncd+++++++++ objects/namespaced/default/\ncd+++++++++ objects/namespaced/default/configmaps/\n>f+++++++++ objects/namespaced/default/configmaps/kube-root-ca.crt.txt\n>f+++++++++ objects/namespaced/default/configmaps/kube-root-ca.crt.yaml\ncd+++++++++ objects/namespaced/default/endpoints/\n>f+++++++++ objects/namespaced/default/endpoints/kubernetes.txt\n>f+++++++++ objects/namespaced/default/endpoints/kubernetes.yaml\ncd+++++++++ objects/namespaced/default/secrets/\n>f+++++++++ objects/namespaced/default/secrets/test-password.txt\n>f+++++++++ objects/namespaced/default/secrets/test-password.yaml\ncd+++++++++ objects/namespaced/default/serviceaccounts/\n>f+++++++++ objects/namespaced/default/serviceaccounts/default.txt\n>f+++++++++ objects/namespaced/default/serviceaccounts/default.yaml\ncd+++++++++ objects/namespaced/default/services/\n>f+++++++++ objects/namespaced/default/services/kubernetes.txt\n>f+++++++++ objects/namespaced/default/services/kubernetes.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/\ncd+++++++++ objects/namespaced/envoy-gateway-system/configmaps/\n>f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/envoy-gateway-config.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/envoy-gateway-config.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/kube-root-ca.crt.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/kube-root-ca.crt.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/deployment/\n>f+++++++++ objects/namespaced/envoy-gateway-system/deployment/envoy-gateway.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/deployment/envoy-gateway.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/endpoints/\n>f+++++++++ objects/namespaced/envoy-gateway-system/endpoints/envoy-gateway.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/endpoints/envoy-gateway.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/pods/\n>f+++++++++ objects/namespaced/envoy-gateway-system/pods/envoy-gateway-78446f96c9-4vkv7.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/pods/envoy-gateway-78446f96c9-4vkv7.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/\n>f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-certgen.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-certgen.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-infra-manager.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-infra-manager.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-leader-election-rolebinding.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-leader-election-rolebinding.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/roles/\n>f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-certgen.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-certgen.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-infra-manager.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-infra-manager.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-leader-election-role.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-leader-election-role.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/secrets/\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-gateway.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-gateway.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-oidc-hmac.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-oidc-hmac.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-rate-limit.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-rate-limit.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/sh.helm.release.v1.envoy-gateway.v1.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/secrets/sh.helm.release.v1.envoy-gateway.v1.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/\n>f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/default.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/default.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway-gateway-helm-certgen.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway-gateway-helm-certgen.yaml\n>f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway.yaml\ncd+++++++++ objects/namespaced/envoy-gateway-system/services/\n>f+++++++++ objects/namespaced/envoy-gateway-system/services/envoy-gateway.txt\n>f+++++++++ objects/namespaced/envoy-gateway-system/services/envoy-gateway.yaml\ncd+++++++++ objects/namespaced/kube-node-lease/\ncd+++++++++ objects/namespaced/kube-node-lease/configmaps/\n>f+++++++++ objects/namespaced/kube-node-lease/configmaps/kube-root-ca.crt.txt\n>f+++++++++ objects/namespaced/kube-node-lease/configmaps/kube-root-ca.crt.yaml\ncd+++++++++ objects/namespaced/kube-node-lease/serviceaccounts/\n>f+++++++++ objects/namespaced/kube-node-lease/serviceaccounts/default.txt\n>f+++++++++ objects/namespaced/kube-node-lease/serviceaccounts/default.yaml\ncd+++++++++ objects/namespaced/kube-public/\ncd+++++++++ objects/namespaced/kube-public/configmaps/\n>f+++++++++ objects/namespaced/kube-public/configmaps/cluster-info.txt\n>f+++++++++ objects/namespaced/kube-public/configmaps/cluster-info.yaml\n>f+++++++++ objects/namespaced/kube-public/configmaps/kube-root-ca.crt.txt\n>f+++++++++ objects/namespaced/kube-public/configmaps/kube-root-ca.crt.yaml\ncd+++++++++ objects/namespaced/kube-public/rolebindings/\n>f+++++++++ objects/namespaced/kube-public/rolebindings/kubeadm:bootstrap-signer-clusterinfo.txt\n>f+++++++++ objects/namespaced/kube-public/rolebindings/kubeadm:bootstrap-signer-clusterinfo.yaml\n>f+++++++++ objects/namespaced/kube-public/rolebindings/system:controller:bootstrap-signer.txt\n>f+++++++++ objects/namespaced/kube-public/rolebindings/system:controller:bootstrap-signer.yaml\ncd+++++++++ objects/namespaced/kube-public/roles/\n>f+++++++++ objects/namespaced/kube-public/roles/kubeadm:bootstrap-signer-clusterinfo.txt\n>f+++++++++ objects/namespaced/kube-public/roles/kubeadm:bootstrap-signer-clusterinfo.yaml\n>f+++++++++ objects/namespaced/kube-public/roles/system:controller:bootstrap-signer.txt\n>f+++++++++ objects/namespaced/kube-public/roles/system:controller:bootstrap-signer.yaml\ncd+++++++++ objects/namespaced/kube-public/serviceaccounts/\n>f+++++++++ objects/namespaced/kube-public/serviceaccounts/default.txt\n>f+++++++++ objects/namespaced/kube-public/serviceaccounts/default.yaml\ncd+++++++++ objects/namespaced/kube-system/\ncd+++++++++ objects/namespaced/kube-system/configmaps/\n>f+++++++++ objects/namespaced/kube-system/configmaps/cilium-config.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/cilium-config.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/coredns.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/coredns.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/extension-apiserver-authentication.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/extension-apiserver-authentication.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/kube-apiserver-legacy-service-account-token-tracking.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/kube-apiserver-legacy-service-account-token-tracking.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/kube-proxy.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/kube-proxy.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/kube-root-ca.crt.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/kube-root-ca.crt.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/kubeadm-config.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/kubeadm-config.yaml\n>f+++++++++ objects/namespaced/kube-system/configmaps/kubelet-config.txt\n>f+++++++++ objects/namespaced/kube-system/configmaps/kubelet-config.yaml\ncd+++++++++ objects/namespaced/kube-system/daemonsets/\n>f+++++++++ objects/namespaced/kube-system/daemonsets/cilium.txt\n>f+++++++++ objects/namespaced/kube-system/daemonsets/cilium.yaml\n>f+++++++++ objects/namespaced/kube-system/daemonsets/kube-proxy.txt\n>f+++++++++ objects/namespaced/kube-system/daemonsets/kube-proxy.yaml\ncd+++++++++ objects/namespaced/kube-system/deployment/\n>f+++++++++ objects/namespaced/kube-system/deployment/cilium-operator.txt\n>f+++++++++ objects/namespaced/kube-system/deployment/cilium-operator.yaml\n>f+++++++++ objects/namespaced/kube-system/deployment/coredns.txt\n>f+++++++++ objects/namespaced/kube-system/deployment/coredns.yaml\ncd+++++++++ objects/namespaced/kube-system/endpoints/\n>f+++++++++ objects/namespaced/kube-system/endpoints/kube-dns.txt\n>f+++++++++ objects/namespaced/kube-system/endpoints/kube-dns.yaml\ncd+++++++++ objects/namespaced/kube-system/pods/\n>f+++++++++ objects/namespaced/kube-system/pods/cilium-operator-7fcd8d6ffd-rnfn8.txt\n>f+++++++++ objects/namespaced/kube-system/pods/cilium-operator-7fcd8d6ffd-rnfn8.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/cilium-wprkr.txt\n>f+++++++++ objects/namespaced/kube-system/pods/cilium-wprkr.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/coredns-5dd5756b68-2kp5r.txt\n>f+++++++++ objects/namespaced/kube-system/pods/coredns-5dd5756b68-2kp5r.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-524xt.txt\n>f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-524xt.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-cfxp8.txt\n>f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-cfxp8.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/etcd-controller.txt\n>f+++++++++ objects/namespaced/kube-system/pods/etcd-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/kube-apiserver-controller.txt\n>f+++++++++ objects/namespaced/kube-system/pods/kube-apiserver-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/kube-controller-manager-controller.txt\n>f+++++++++ objects/namespaced/kube-system/pods/kube-controller-manager-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/kube-proxy-r75wb.txt\n>f+++++++++ objects/namespaced/kube-system/pods/kube-proxy-r75wb.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/kube-scheduler-controller.txt\n>f+++++++++ objects/namespaced/kube-system/pods/kube-scheduler-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/pods/kube-vip-controller.txt\n>f+++++++++ objects/namespaced/kube-system/pods/kube-vip-controller.yaml\ncd+++++++++ objects/namespaced/kube-system/rolebindings/\n>f+++++++++ objects/namespaced/kube-system/rolebindings/cilium-config-agent.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/cilium-config-agent.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kube-proxy.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kube-proxy.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubeadm-certs.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubeadm-certs.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubelet-config.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubelet-config.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:nodes-kubeadm-config.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:nodes-kubeadm-config.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system::extension-apiserver-authentication-reader.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system::extension-apiserver-authentication-reader.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-controller-manager.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-controller-manager.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-scheduler.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-scheduler.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:bootstrap-signer.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:bootstrap-signer.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:cloud-provider.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:cloud-provider.yaml\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:token-cleaner.txt\n>f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:token-cleaner.yaml\ncd+++++++++ objects/namespaced/kube-system/roles/\n>f+++++++++ objects/namespaced/kube-system/roles/cilium-config-agent.txt\n>f+++++++++ objects/namespaced/kube-system/roles/cilium-config-agent.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/extension-apiserver-authentication-reader.txt\n>f+++++++++ objects/namespaced/kube-system/roles/extension-apiserver-authentication-reader.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/kube-proxy.txt\n>f+++++++++ objects/namespaced/kube-system/roles/kube-proxy.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubeadm-certs.txt\n>f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubeadm-certs.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubelet-config.txt\n>f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubelet-config.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/kubeadm:nodes-kubeadm-config.txt\n>f+++++++++ objects/namespaced/kube-system/roles/kubeadm:nodes-kubeadm-config.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-controller-manager.txt\n>f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-controller-manager.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-scheduler.txt\n>f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-scheduler.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/system:controller:bootstrap-signer.txt\n>f+++++++++ objects/namespaced/kube-system/roles/system:controller:bootstrap-signer.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/system:controller:cloud-provider.txt\n>f+++++++++ objects/namespaced/kube-system/roles/system:controller:cloud-provider.yaml\n>f+++++++++ objects/namespaced/kube-system/roles/system:controller:token-cleaner.txt\n>f+++++++++ objects/namespaced/kube-system/roles/system:controller:token-cleaner.yaml\ncd+++++++++ objects/namespaced/kube-system/secrets/\n>f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-6q4948.txt\n>f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-6q4948.yaml\n>f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-kjk29x.txt\n>f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-kjk29x.yaml\n>f+++++++++ objects/namespaced/kube-system/secrets/kubeadm-certs.txt\n>f+++++++++ objects/namespaced/kube-system/secrets/kubeadm-certs.yaml\n>f+++++++++ objects/namespaced/kube-system/secrets/sh.helm.release.v1.cilium.v1.txt\n>f+++++++++ objects/namespaced/kube-system/secrets/sh.helm.release.v1.cilium.v1.yaml\ncd+++++++++ objects/namespaced/kube-system/serviceaccounts/\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/attachdetach-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/attachdetach-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/bootstrap-signer.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/bootstrap-signer.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/certificate-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/certificate-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium-operator.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium-operator.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/clusterrole-aggregation-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/clusterrole-aggregation-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/coredns.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/coredns.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/cronjob-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/cronjob-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/daemon-set-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/daemon-set-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/default.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/default.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/deployment-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/deployment-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/disruption-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/disruption-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpoint-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpoint-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslice-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslice-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslicemirroring-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslicemirroring-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/ephemeral-volume-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/ephemeral-volume-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/expand-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/expand-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/generic-garbage-collector.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/generic-garbage-collector.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/horizontal-pod-autoscaler.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/horizontal-pod-autoscaler.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/job-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/job-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/kube-proxy.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/kube-proxy.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/namespace-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/namespace-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/node-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/node-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/persistent-volume-binder.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/persistent-volume-binder.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/pod-garbage-collector.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/pod-garbage-collector.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/pv-protection-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/pv-protection-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/pvc-protection-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/pvc-protection-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/replicaset-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/replicaset-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/replication-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/replication-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/resourcequota-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/resourcequota-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/root-ca-cert-publisher.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/root-ca-cert-publisher.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-account-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-account-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/statefulset-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/statefulset-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/token-cleaner.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/token-cleaner.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-after-finished-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-after-finished-controller.yaml\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-controller.txt\n>f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-controller.yaml\ncd+++++++++ objects/namespaced/kube-system/services/\n>f+++++++++ objects/namespaced/kube-system/services/kube-dns.txt\n>f+++++++++ objects/namespaced/kube-system/services/kube-dns.yaml\ncd+++++++++ objects/namespaced/secretgen-controller/\ncd+++++++++ objects/namespaced/secretgen-controller/configmaps/\n>f+++++++++ objects/namespaced/secretgen-controller/configmaps/kube-root-ca.crt.txt\n>f+++++++++ objects/namespaced/secretgen-controller/configmaps/kube-root-ca.crt.yaml\ncd+++++++++ objects/namespaced/secretgen-controller/deployment/\n>f+++++++++ objects/namespaced/secretgen-controller/deployment/secretgen-controller.txt\n>f+++++++++ objects/namespaced/secretgen-controller/deployment/secretgen-controller.yaml\ncd+++++++++ objects/namespaced/secretgen-controller/pods/\n>f+++++++++ objects/namespaced/secretgen-controller/pods/secretgen-controller-ffb97c6dc-z4ssl.txt\n>f+++++++++ objects/namespaced/secretgen-controller/pods/secretgen-controller-ffb97c6dc-z4ssl.yaml\ncd+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/\n>f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/default.txt\n>f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/default.yaml\n>f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/secretgen-controller-sa.txt\n>f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/secretgen-controller-sa.yaml\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ objects/",
                                "cd+++++++++ objects/cluster/",
                                "cd+++++++++ objects/cluster/clusterrole/",
                                ">f+++++++++ objects/cluster/clusterrole/admin.txt",
                                ">f+++++++++ objects/cluster/clusterrole/admin.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/cilium-operator.txt",
                                ">f+++++++++ objects/cluster/clusterrole/cilium-operator.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/cilium.txt",
                                ">f+++++++++ objects/cluster/clusterrole/cilium.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/cluster-admin.txt",
                                ">f+++++++++ objects/cluster/clusterrole/cluster-admin.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/edit.txt",
                                ">f+++++++++ objects/cluster/clusterrole/edit.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.txt",
                                ">f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-envoy-gateway-role.txt",
                                ">f+++++++++ objects/cluster/clusterrole/envoy-gateway-gateway-helm-envoy-gateway-role.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/kubeadm:get-nodes.txt",
                                ">f+++++++++ objects/cluster/clusterrole/kubeadm:get-nodes.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/secretgen-controller-cluster-role.txt",
                                ">f+++++++++ objects/cluster/clusterrole/secretgen-controller-cluster-role.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:aggregate-to-admin.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:aggregate-to-admin.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:aggregate-to-edit.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:aggregate-to-edit.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:aggregate-to-view.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:aggregate-to-view.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:auth-delegator.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:auth-delegator.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:basic-user.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:basic-user.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:nodeclient.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:nodeclient.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:selfnodeclient.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:certificatesigningrequests:selfnodeclient.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-approver.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-approver.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-kubelet-approver.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kube-apiserver-client-kubelet-approver.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kubelet-serving-approver.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:kubelet-serving-approver.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:legacy-unknown-approver.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:certificates.k8s.io:legacy-unknown-approver.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:attachdetach-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:attachdetach-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:certificate-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:certificate-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:clusterrole-aggregation-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:clusterrole-aggregation-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:cronjob-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:cronjob-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:daemon-set-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:daemon-set-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:deployment-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:deployment-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:disruption-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:disruption-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:endpoint-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:endpoint-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:endpointslice-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:endpointslice-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:endpointslicemirroring-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:endpointslicemirroring-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:ephemeral-volume-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:ephemeral-volume-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:expand-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:expand-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:generic-garbage-collector.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:generic-garbage-collector.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:horizontal-pod-autoscaler.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:horizontal-pod-autoscaler.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:job-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:job-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:namespace-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:namespace-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:node-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:node-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:persistent-volume-binder.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:persistent-volume-binder.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:pod-garbage-collector.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:pod-garbage-collector.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:pv-protection-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:pv-protection-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:pvc-protection-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:pvc-protection-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:replicaset-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:replicaset-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:replication-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:replication-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:resourcequota-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:resourcequota-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:root-ca-cert-publisher.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:root-ca-cert-publisher.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:route-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:route-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:service-account-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:service-account-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:service-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:service-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:statefulset-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:statefulset-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:ttl-after-finished-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:ttl-after-finished-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:ttl-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:controller:ttl-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:coredns.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:coredns.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:discovery.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:discovery.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:heapster.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:heapster.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-aggregator.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-aggregator.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-controller-manager.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-controller-manager.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-dns.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-dns.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-scheduler.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:kube-scheduler.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:kubelet-api-admin.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:kubelet-api-admin.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:monitoring.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:monitoring.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:node-bootstrapper.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:node-bootstrapper.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:node-problem-detector.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:node-problem-detector.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:node-proxier.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:node-proxier.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:node.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:node.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:persistent-volume-provisioner.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:persistent-volume-provisioner.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:public-info-viewer.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:public-info-viewer.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:service-account-issuer-discovery.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:service-account-issuer-discovery.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/system:volume-scheduler.txt",
                                ">f+++++++++ objects/cluster/clusterrole/system:volume-scheduler.yaml",
                                ">f+++++++++ objects/cluster/clusterrole/view.txt",
                                ">f+++++++++ objects/cluster/clusterrole/view.yaml",
                                "cd+++++++++ objects/cluster/clusterrolebinding/",
                                ">f+++++++++ objects/cluster/clusterrolebinding/cilium-operator.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/cilium-operator.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/cilium.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/cilium.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/cluster-admin.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/cluster-admin.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-certgen:envoy-gateway-system.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-envoy-gateway-rolebinding.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/envoy-gateway-gateway-helm-envoy-gateway-rolebinding.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:get-nodes.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:get-nodes.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:kubelet-bootstrap.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:kubelet-bootstrap.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-bootstrap.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-bootstrap.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-certificate-rotation.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-autoapprove-certificate-rotation.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-proxier.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/kubeadm:node-proxier.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/secretgen-controller-cluster-role-binding.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/secretgen-controller-cluster-role-binding.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:basic-user.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:basic-user.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:attachdetach-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:attachdetach-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:certificate-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:certificate-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:clusterrole-aggregation-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:clusterrole-aggregation-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:cronjob-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:cronjob-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:daemon-set-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:daemon-set-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:deployment-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:deployment-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:disruption-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:disruption-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpoint-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpoint-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslice-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslice-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslicemirroring-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:endpointslicemirroring-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:ephemeral-volume-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:ephemeral-volume-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:expand-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:expand-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:generic-garbage-collector.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:generic-garbage-collector.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:horizontal-pod-autoscaler.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:horizontal-pod-autoscaler.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:job-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:job-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:namespace-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:namespace-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:node-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:node-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:persistent-volume-binder.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:persistent-volume-binder.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:pod-garbage-collector.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:pod-garbage-collector.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:pv-protection-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:pv-protection-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:pvc-protection-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:pvc-protection-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:replicaset-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:replicaset-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:replication-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:replication-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:resourcequota-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:resourcequota-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:root-ca-cert-publisher.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:root-ca-cert-publisher.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:route-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:route-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-account-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-account-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:service-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:statefulset-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:statefulset-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-after-finished-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-after-finished-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-controller.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:controller:ttl-controller.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:coredns.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:coredns.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:discovery.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:discovery.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:kube-controller-manager.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:kube-controller-manager.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:kube-dns.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:kube-dns.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:kube-scheduler.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:kube-scheduler.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:monitoring.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:monitoring.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:node-proxier.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:node-proxier.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:node.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:node.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:public-info-viewer.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:public-info-viewer.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:service-account-issuer-discovery.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:service-account-issuer-discovery.yaml",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:volume-scheduler.txt",
                                ">f+++++++++ objects/cluster/clusterrolebinding/system:volume-scheduler.yaml",
                                "cd+++++++++ objects/cluster/namespace/",
                                ">f+++++++++ objects/cluster/namespace/default.txt",
                                ">f+++++++++ objects/cluster/namespace/default.yaml",
                                ">f+++++++++ objects/cluster/namespace/envoy-gateway-system.txt",
                                ">f+++++++++ objects/cluster/namespace/envoy-gateway-system.yaml",
                                ">f+++++++++ objects/cluster/namespace/kube-node-lease.txt",
                                ">f+++++++++ objects/cluster/namespace/kube-node-lease.yaml",
                                ">f+++++++++ objects/cluster/namespace/kube-public.txt",
                                ">f+++++++++ objects/cluster/namespace/kube-public.yaml",
                                ">f+++++++++ objects/cluster/namespace/kube-system.txt",
                                ">f+++++++++ objects/cluster/namespace/kube-system.yaml",
                                ">f+++++++++ objects/cluster/namespace/secretgen-controller.txt",
                                ">f+++++++++ objects/cluster/namespace/secretgen-controller.yaml",
                                "cd+++++++++ objects/cluster/node/",
                                ">f+++++++++ objects/cluster/node/controller.txt",
                                ">f+++++++++ objects/cluster/node/controller.yaml",
                                "cd+++++++++ objects/namespaced/",
                                "cd+++++++++ objects/namespaced/default/",
                                "cd+++++++++ objects/namespaced/default/configmaps/",
                                ">f+++++++++ objects/namespaced/default/configmaps/kube-root-ca.crt.txt",
                                ">f+++++++++ objects/namespaced/default/configmaps/kube-root-ca.crt.yaml",
                                "cd+++++++++ objects/namespaced/default/endpoints/",
                                ">f+++++++++ objects/namespaced/default/endpoints/kubernetes.txt",
                                ">f+++++++++ objects/namespaced/default/endpoints/kubernetes.yaml",
                                "cd+++++++++ objects/namespaced/default/secrets/",
                                ">f+++++++++ objects/namespaced/default/secrets/test-password.txt",
                                ">f+++++++++ objects/namespaced/default/secrets/test-password.yaml",
                                "cd+++++++++ objects/namespaced/default/serviceaccounts/",
                                ">f+++++++++ objects/namespaced/default/serviceaccounts/default.txt",
                                ">f+++++++++ objects/namespaced/default/serviceaccounts/default.yaml",
                                "cd+++++++++ objects/namespaced/default/services/",
                                ">f+++++++++ objects/namespaced/default/services/kubernetes.txt",
                                ">f+++++++++ objects/namespaced/default/services/kubernetes.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/configmaps/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/envoy-gateway-config.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/envoy-gateway-config.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/kube-root-ca.crt.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/configmaps/kube-root-ca.crt.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/deployment/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/deployment/envoy-gateway.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/deployment/envoy-gateway.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/endpoints/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/endpoints/envoy-gateway.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/endpoints/envoy-gateway.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/pods/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/pods/envoy-gateway-78446f96c9-4vkv7.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/pods/envoy-gateway-78446f96c9-4vkv7.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-certgen.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-certgen.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-infra-manager.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-infra-manager.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-leader-election-rolebinding.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/rolebindings/envoy-gateway-gateway-helm-leader-election-rolebinding.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/roles/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-certgen.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-certgen.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-infra-manager.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-infra-manager.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-leader-election-role.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/roles/envoy-gateway-gateway-helm-leader-election-role.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/secrets/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-gateway.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-gateway.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-oidc-hmac.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-oidc-hmac.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-rate-limit.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy-rate-limit.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/envoy.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/sh.helm.release.v1.envoy-gateway.v1.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/secrets/sh.helm.release.v1.envoy-gateway.v1.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/default.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/default.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway-gateway-helm-certgen.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway-gateway-helm-certgen.yaml",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/serviceaccounts/envoy-gateway.yaml",
                                "cd+++++++++ objects/namespaced/envoy-gateway-system/services/",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/services/envoy-gateway.txt",
                                ">f+++++++++ objects/namespaced/envoy-gateway-system/services/envoy-gateway.yaml",
                                "cd+++++++++ objects/namespaced/kube-node-lease/",
                                "cd+++++++++ objects/namespaced/kube-node-lease/configmaps/",
                                ">f+++++++++ objects/namespaced/kube-node-lease/configmaps/kube-root-ca.crt.txt",
                                ">f+++++++++ objects/namespaced/kube-node-lease/configmaps/kube-root-ca.crt.yaml",
                                "cd+++++++++ objects/namespaced/kube-node-lease/serviceaccounts/",
                                ">f+++++++++ objects/namespaced/kube-node-lease/serviceaccounts/default.txt",
                                ">f+++++++++ objects/namespaced/kube-node-lease/serviceaccounts/default.yaml",
                                "cd+++++++++ objects/namespaced/kube-public/",
                                "cd+++++++++ objects/namespaced/kube-public/configmaps/",
                                ">f+++++++++ objects/namespaced/kube-public/configmaps/cluster-info.txt",
                                ">f+++++++++ objects/namespaced/kube-public/configmaps/cluster-info.yaml",
                                ">f+++++++++ objects/namespaced/kube-public/configmaps/kube-root-ca.crt.txt",
                                ">f+++++++++ objects/namespaced/kube-public/configmaps/kube-root-ca.crt.yaml",
                                "cd+++++++++ objects/namespaced/kube-public/rolebindings/",
                                ">f+++++++++ objects/namespaced/kube-public/rolebindings/kubeadm:bootstrap-signer-clusterinfo.txt",
                                ">f+++++++++ objects/namespaced/kube-public/rolebindings/kubeadm:bootstrap-signer-clusterinfo.yaml",
                                ">f+++++++++ objects/namespaced/kube-public/rolebindings/system:controller:bootstrap-signer.txt",
                                ">f+++++++++ objects/namespaced/kube-public/rolebindings/system:controller:bootstrap-signer.yaml",
                                "cd+++++++++ objects/namespaced/kube-public/roles/",
                                ">f+++++++++ objects/namespaced/kube-public/roles/kubeadm:bootstrap-signer-clusterinfo.txt",
                                ">f+++++++++ objects/namespaced/kube-public/roles/kubeadm:bootstrap-signer-clusterinfo.yaml",
                                ">f+++++++++ objects/namespaced/kube-public/roles/system:controller:bootstrap-signer.txt",
                                ">f+++++++++ objects/namespaced/kube-public/roles/system:controller:bootstrap-signer.yaml",
                                "cd+++++++++ objects/namespaced/kube-public/serviceaccounts/",
                                ">f+++++++++ objects/namespaced/kube-public/serviceaccounts/default.txt",
                                ">f+++++++++ objects/namespaced/kube-public/serviceaccounts/default.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/",
                                "cd+++++++++ objects/namespaced/kube-system/configmaps/",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/cilium-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/cilium-config.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/coredns.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/coredns.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/extension-apiserver-authentication.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/extension-apiserver-authentication.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kube-apiserver-legacy-service-account-token-tracking.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kube-apiserver-legacy-service-account-token-tracking.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kube-proxy.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kube-proxy.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kube-root-ca.crt.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kube-root-ca.crt.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kubeadm-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kubeadm-config.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kubelet-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/configmaps/kubelet-config.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/daemonsets/",
                                ">f+++++++++ objects/namespaced/kube-system/daemonsets/cilium.txt",
                                ">f+++++++++ objects/namespaced/kube-system/daemonsets/cilium.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/daemonsets/kube-proxy.txt",
                                ">f+++++++++ objects/namespaced/kube-system/daemonsets/kube-proxy.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/deployment/",
                                ">f+++++++++ objects/namespaced/kube-system/deployment/cilium-operator.txt",
                                ">f+++++++++ objects/namespaced/kube-system/deployment/cilium-operator.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/deployment/coredns.txt",
                                ">f+++++++++ objects/namespaced/kube-system/deployment/coredns.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/endpoints/",
                                ">f+++++++++ objects/namespaced/kube-system/endpoints/kube-dns.txt",
                                ">f+++++++++ objects/namespaced/kube-system/endpoints/kube-dns.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/pods/",
                                ">f+++++++++ objects/namespaced/kube-system/pods/cilium-operator-7fcd8d6ffd-rnfn8.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/cilium-operator-7fcd8d6ffd-rnfn8.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/cilium-wprkr.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/cilium-wprkr.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/coredns-5dd5756b68-2kp5r.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/coredns-5dd5756b68-2kp5r.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-524xt.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-524xt.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-cfxp8.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/coredns-77cccfdc44-cfxp8.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/etcd-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/etcd-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-apiserver-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-apiserver-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-controller-manager-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-controller-manager-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-proxy-r75wb.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-proxy-r75wb.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-scheduler-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-scheduler-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-vip-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/pods/kube-vip-controller.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/rolebindings/",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/cilium-config-agent.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/cilium-config-agent.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kube-proxy.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kube-proxy.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubeadm-certs.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubeadm-certs.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubelet-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:kubelet-config.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:nodes-kubeadm-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/kubeadm:nodes-kubeadm-config.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system::extension-apiserver-authentication-reader.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system::extension-apiserver-authentication-reader.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-controller-manager.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-controller-manager.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-scheduler.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system::leader-locking-kube-scheduler.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:bootstrap-signer.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:bootstrap-signer.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:cloud-provider.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:cloud-provider.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:token-cleaner.txt",
                                ">f+++++++++ objects/namespaced/kube-system/rolebindings/system:controller:token-cleaner.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/roles/",
                                ">f+++++++++ objects/namespaced/kube-system/roles/cilium-config-agent.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/cilium-config-agent.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/extension-apiserver-authentication-reader.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/extension-apiserver-authentication-reader.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kube-proxy.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kube-proxy.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubeadm-certs.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubeadm-certs.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubelet-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kubeadm:kubelet-config.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kubeadm:nodes-kubeadm-config.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/kubeadm:nodes-kubeadm-config.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-controller-manager.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-controller-manager.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-scheduler.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system::leader-locking-kube-scheduler.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system:controller:bootstrap-signer.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system:controller:bootstrap-signer.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system:controller:cloud-provider.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system:controller:cloud-provider.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system:controller:token-cleaner.txt",
                                ">f+++++++++ objects/namespaced/kube-system/roles/system:controller:token-cleaner.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/secrets/",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-6q4948.txt",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-6q4948.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-kjk29x.txt",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/bootstrap-token-kjk29x.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/kubeadm-certs.txt",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/kubeadm-certs.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/sh.helm.release.v1.cilium.v1.txt",
                                ">f+++++++++ objects/namespaced/kube-system/secrets/sh.helm.release.v1.cilium.v1.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/serviceaccounts/",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/attachdetach-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/attachdetach-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/bootstrap-signer.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/bootstrap-signer.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/certificate-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/certificate-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium-operator.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium-operator.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/cilium.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/clusterrole-aggregation-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/clusterrole-aggregation-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/coredns.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/coredns.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/cronjob-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/cronjob-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/daemon-set-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/daemon-set-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/default.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/default.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/deployment-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/deployment-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/disruption-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/disruption-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpoint-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpoint-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslice-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslice-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslicemirroring-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/endpointslicemirroring-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/ephemeral-volume-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/ephemeral-volume-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/expand-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/expand-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/generic-garbage-collector.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/generic-garbage-collector.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/horizontal-pod-autoscaler.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/horizontal-pod-autoscaler.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/job-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/job-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/kube-proxy.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/kube-proxy.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/namespace-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/namespace-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/node-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/node-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/persistent-volume-binder.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/persistent-volume-binder.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/pod-garbage-collector.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/pod-garbage-collector.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/pv-protection-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/pv-protection-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/pvc-protection-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/pvc-protection-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/replicaset-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/replicaset-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/replication-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/replication-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/resourcequota-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/resourcequota-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/root-ca-cert-publisher.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/root-ca-cert-publisher.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-account-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-account-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/service-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/statefulset-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/statefulset-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/token-cleaner.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/token-cleaner.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-after-finished-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-after-finished-controller.yaml",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-controller.txt",
                                ">f+++++++++ objects/namespaced/kube-system/serviceaccounts/ttl-controller.yaml",
                                "cd+++++++++ objects/namespaced/kube-system/services/",
                                ">f+++++++++ objects/namespaced/kube-system/services/kube-dns.txt",
                                ">f+++++++++ objects/namespaced/kube-system/services/kube-dns.yaml",
                                "cd+++++++++ objects/namespaced/secretgen-controller/",
                                "cd+++++++++ objects/namespaced/secretgen-controller/configmaps/",
                                ">f+++++++++ objects/namespaced/secretgen-controller/configmaps/kube-root-ca.crt.txt",
                                ">f+++++++++ objects/namespaced/secretgen-controller/configmaps/kube-root-ca.crt.yaml",
                                "cd+++++++++ objects/namespaced/secretgen-controller/deployment/",
                                ">f+++++++++ objects/namespaced/secretgen-controller/deployment/secretgen-controller.txt",
                                ">f+++++++++ objects/namespaced/secretgen-controller/deployment/secretgen-controller.yaml",
                                "cd+++++++++ objects/namespaced/secretgen-controller/pods/",
                                ">f+++++++++ objects/namespaced/secretgen-controller/pods/secretgen-controller-ffb97c6dc-z4ssl.txt",
                                ">f+++++++++ objects/namespaced/secretgen-controller/pods/secretgen-controller-ffb97c6dc-z4ssl.yaml",
                                "cd+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/",
                                ">f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/default.txt",
                                ">f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/default.yaml",
                                ">f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/secretgen-controller-sa.txt",
                                ">f+++++++++ objects/namespaced/secretgen-controller/serviceaccounts/secretgen-controller-sa.yaml"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000017",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:39.403178Z",
                            "start": "2026-06-30T18:40:38.784228Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000001d",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/pod-logs",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/pod-logs",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/pod-logs",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/pod-logs",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:39.664797Z",
                            "start": "2026-06-30T18:40:39.415130Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000021",
                        "name": "creating directory for pod logs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/pod-logs/failed-pods",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:39.919511Z",
                            "start": "2026-06-30T18:40:39.670036Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000022",
                        "name": "creating directory for failed pod logs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\nfunction get_pods () {\n  NAMESPACE=$1\n  kubectl get pods -n ${NAMESPACE} -o name | awk -F '/' '{ print $NF }' | xargs -I {} echo ${NAMESPACE} {}\n}\nexport -f get_pods\nfunction get_pod_logs () {\n  NAMESPACE=${1% *}\n  POD=${1#* }\n  INIT_CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.initContainers[]?.name')\n  CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.containers[].name')\n  for CONTAINER in ${INIT_CONTAINERS} ${CONTAINERS}; do\n    echo \"${NAMESPACE}/${POD}/${CONTAINER}\"\n    mkdir -p \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}\"\n    mkdir -p \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}\"\n    kubectl logs ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n    kubectl logs --previous ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n  done\n}\nexport -f get_pod_logs\nget_namespaces |  xargs -r -I {} bash -c 'get_pods \"$@\"' _ {} |  xargs -r -I {} bash -c 'get_pod_logs \"$@\"' _ {}",
                            "delta": "0:00:06.204036",
                            "end": "2026-06-30 18:40:46.379737",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\nfunction get_pods () {\n  NAMESPACE=$1\n  kubectl get pods -n ${NAMESPACE} -o name | awk -F '/' '{ print $NF }' | xargs -I {} echo ${NAMESPACE} {}\n}\nexport -f get_pods\nfunction get_pod_logs () {\n  NAMESPACE=${1% *}\n  POD=${1#* }\n  INIT_CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.initContainers[]?.name')\n  CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.containers[].name')\n  for CONTAINER in ${INIT_CONTAINERS} ${CONTAINERS}; do\n    echo \"${NAMESPACE}/${POD}/${CONTAINER}\"\n    mkdir -p \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}\"\n    mkdir -p \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}\"\n    kubectl logs ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n    kubectl logs --previous ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n  done\n}\nexport -f get_pod_logs\nget_namespaces |  xargs -r -I {} bash -c 'get_pods \"$@\"' _ {} |  xargs -r -I {} bash -c 'get_pod_logs \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000023-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 123,
                            "start": "2026-06-30 18:40:40.175701",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/envoy-gateway\nError from server (BadRequest): previous terminated container \"envoy-gateway\" in pod \"envoy-gateway-78446f96c9-4vkv7\" not found\nkube-system/cilium-operator-7fcd8d6ffd-rnfn8/cilium-operator\nError from server (BadRequest): previous terminated container \"cilium-operator\" in pod \"cilium-operator-7fcd8d6ffd-rnfn8\" not found\nkube-system/cilium-wprkr/config\nError from server (BadRequest): previous terminated container \"config\" in pod \"cilium-wprkr\" not found\nkube-system/cilium-wprkr/mount-cgroup\nError from server (BadRequest): previous terminated container \"mount-cgroup\" in pod \"cilium-wprkr\" not found\nkube-system/cilium-wprkr/apply-sysctl-overwrites\nError from server (BadRequest): previous terminated container \"apply-sysctl-overwrites\" in pod \"cilium-wprkr\" not found\nkube-system/cilium-wprkr/mount-bpf-fs\nError from server (BadRequest): previous terminated container \"mount-bpf-fs\" in pod \"cilium-wprkr\" not found\nkube-system/cilium-wprkr/clean-cilium-state\nError from server (BadRequest): previous terminated container \"clean-cilium-state\" in pod \"cilium-wprkr\" not found\nkube-system/cilium-wprkr/install-cni-binaries\nError from server (BadRequest): previous terminated container \"install-cni-binaries\" in pod \"cilium-wprkr\" not found\nkube-system/cilium-wprkr/cilium-agent\nError from server (BadRequest): previous terminated container \"cilium-agent\" in pod \"cilium-wprkr\" not found\nkube-system/coredns-5dd5756b68-2kp5r/coredns\nError from server (BadRequest): previous terminated container \"coredns\" in pod \"coredns-5dd5756b68-2kp5r\" not found\nkube-system/coredns-77cccfdc44-524xt/coredns\nkube-system/coredns-77cccfdc44-cfxp8/coredns\nkube-system/etcd-controller/etcd\nError from server (BadRequest): previous terminated container \"etcd\" in pod \"etcd-controller\" not found\nkube-system/kube-apiserver-controller/kube-apiserver\nError from server (BadRequest): previous terminated container \"kube-apiserver\" in pod \"kube-apiserver-controller\" not found\nkube-system/kube-controller-manager-controller/kube-controller-manager\nError from server (BadRequest): previous terminated container \"kube-controller-manager\" in pod \"kube-controller-manager-controller\" not found\nkube-system/kube-proxy-r75wb/kube-proxy\nError from server (BadRequest): previous terminated container \"kube-proxy\" in pod \"kube-proxy-r75wb\" not found\nkube-system/kube-scheduler-controller/kube-scheduler\nError from server (BadRequest): previous terminated container \"kube-scheduler\" in pod \"kube-scheduler-controller\" not found\nkube-system/kube-vip-controller/kube-vip\nError from server (BadRequest): previous terminated container \"kube-vip\" in pod \"kube-vip-controller\" not found\nsecretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/secretgen-controller\nError from server (BadRequest): previous terminated container \"secretgen-controller\" in pod \"secretgen-controller-ffb97c6dc-z4ssl\" not found",
                            "stdout_lines": [
                                "envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/envoy-gateway",
                                "Error from server (BadRequest): previous terminated container \"envoy-gateway\" in pod \"envoy-gateway-78446f96c9-4vkv7\" not found",
                                "kube-system/cilium-operator-7fcd8d6ffd-rnfn8/cilium-operator",
                                "Error from server (BadRequest): previous terminated container \"cilium-operator\" in pod \"cilium-operator-7fcd8d6ffd-rnfn8\" not found",
                                "kube-system/cilium-wprkr/config",
                                "Error from server (BadRequest): previous terminated container \"config\" in pod \"cilium-wprkr\" not found",
                                "kube-system/cilium-wprkr/mount-cgroup",
                                "Error from server (BadRequest): previous terminated container \"mount-cgroup\" in pod \"cilium-wprkr\" not found",
                                "kube-system/cilium-wprkr/apply-sysctl-overwrites",
                                "Error from server (BadRequest): previous terminated container \"apply-sysctl-overwrites\" in pod \"cilium-wprkr\" not found",
                                "kube-system/cilium-wprkr/mount-bpf-fs",
                                "Error from server (BadRequest): previous terminated container \"mount-bpf-fs\" in pod \"cilium-wprkr\" not found",
                                "kube-system/cilium-wprkr/clean-cilium-state",
                                "Error from server (BadRequest): previous terminated container \"clean-cilium-state\" in pod \"cilium-wprkr\" not found",
                                "kube-system/cilium-wprkr/install-cni-binaries",
                                "Error from server (BadRequest): previous terminated container \"install-cni-binaries\" in pod \"cilium-wprkr\" not found",
                                "kube-system/cilium-wprkr/cilium-agent",
                                "Error from server (BadRequest): previous terminated container \"cilium-agent\" in pod \"cilium-wprkr\" not found",
                                "kube-system/coredns-5dd5756b68-2kp5r/coredns",
                                "Error from server (BadRequest): previous terminated container \"coredns\" in pod \"coredns-5dd5756b68-2kp5r\" not found",
                                "kube-system/coredns-77cccfdc44-524xt/coredns",
                                "kube-system/coredns-77cccfdc44-cfxp8/coredns",
                                "kube-system/etcd-controller/etcd",
                                "Error from server (BadRequest): previous terminated container \"etcd\" in pod \"etcd-controller\" not found",
                                "kube-system/kube-apiserver-controller/kube-apiserver",
                                "Error from server (BadRequest): previous terminated container \"kube-apiserver\" in pod \"kube-apiserver-controller\" not found",
                                "kube-system/kube-controller-manager-controller/kube-controller-manager",
                                "Error from server (BadRequest): previous terminated container \"kube-controller-manager\" in pod \"kube-controller-manager-controller\" not found",
                                "kube-system/kube-proxy-r75wb/kube-proxy",
                                "Error from server (BadRequest): previous terminated container \"kube-proxy\" in pod \"kube-proxy-r75wb\" not found",
                                "kube-system/kube-scheduler-controller/kube-scheduler",
                                "Error from server (BadRequest): previous terminated container \"kube-scheduler\" in pod \"kube-scheduler-controller\" not found",
                                "kube-system/kube-vip-controller/kube-vip",
                                "Error from server (BadRequest): previous terminated container \"kube-vip\" in pod \"kube-vip-controller\" not found",
                                "secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/secretgen-controller",
                                "Error from server (BadRequest): previous terminated container \"secretgen-controller\" in pod \"secretgen-controller-ffb97c6dc-z4ssl\" not found"
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000023-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:46.494076Z",
                            "start": "2026-06-30T18:40:39.946688Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000023",
                        "name": "retrieve all kubernetes logs, current and previous (if they exist)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/tmp/logs/pod-logs /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                            "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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.242:/tmp/logs/pod-logs",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ pod-logs/\ncd+++++++++ pod-logs/envoy-gateway-system/\ncd+++++++++ pod-logs/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/\n>f+++++++++ pod-logs/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/envoy-gateway.txt\ncd+++++++++ pod-logs/failed-pods/\ncd+++++++++ pod-logs/failed-pods/envoy-gateway-system/\ncd+++++++++ pod-logs/failed-pods/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/\n>f+++++++++ pod-logs/failed-pods/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/envoy-gateway.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/\ncd+++++++++ pod-logs/failed-pods/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/cilium-operator.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/apply-sysctl-overwrites.txt\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/cilium-agent.txt\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/clean-cilium-state.txt\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/config.txt\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/install-cni-binaries.txt\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/mount-bpf-fs.txt\n>f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/mount-cgroup.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/coredns-5dd5756b68-2kp5r/\n>f+++++++++ pod-logs/failed-pods/kube-system/coredns-5dd5756b68-2kp5r/coredns.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-524xt/\n>f+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-524xt/coredns.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-cfxp8/\n>f+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-cfxp8/coredns.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/etcd-controller/\n>f+++++++++ pod-logs/failed-pods/kube-system/etcd-controller/etcd.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/kube-apiserver-controller/\n>f+++++++++ pod-logs/failed-pods/kube-system/kube-apiserver-controller/kube-apiserver.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/kube-controller-manager-controller/\n>f+++++++++ pod-logs/failed-pods/kube-system/kube-controller-manager-controller/kube-controller-manager.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/kube-proxy-r75wb/\n>f+++++++++ pod-logs/failed-pods/kube-system/kube-proxy-r75wb/kube-proxy.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/kube-scheduler-controller/\n>f+++++++++ pod-logs/failed-pods/kube-system/kube-scheduler-controller/kube-scheduler.txt\ncd+++++++++ pod-logs/failed-pods/kube-system/kube-vip-controller/\n>f+++++++++ pod-logs/failed-pods/kube-system/kube-vip-controller/kube-vip.txt\ncd+++++++++ pod-logs/failed-pods/secretgen-controller/\ncd+++++++++ pod-logs/failed-pods/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/\n>f+++++++++ pod-logs/failed-pods/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/secretgen-controller.txt\ncd+++++++++ pod-logs/kube-system/\ncd+++++++++ pod-logs/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/\n>f+++++++++ pod-logs/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/cilium-operator.txt\ncd+++++++++ pod-logs/kube-system/cilium-wprkr/\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/apply-sysctl-overwrites.txt\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/cilium-agent.txt\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/clean-cilium-state.txt\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/config.txt\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/install-cni-binaries.txt\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/mount-bpf-fs.txt\n>f+++++++++ pod-logs/kube-system/cilium-wprkr/mount-cgroup.txt\ncd+++++++++ pod-logs/kube-system/coredns-5dd5756b68-2kp5r/\n>f+++++++++ pod-logs/kube-system/coredns-5dd5756b68-2kp5r/coredns.txt\ncd+++++++++ pod-logs/kube-system/coredns-77cccfdc44-524xt/\n>f+++++++++ pod-logs/kube-system/coredns-77cccfdc44-524xt/coredns.txt\ncd+++++++++ pod-logs/kube-system/coredns-77cccfdc44-cfxp8/\n>f+++++++++ pod-logs/kube-system/coredns-77cccfdc44-cfxp8/coredns.txt\ncd+++++++++ pod-logs/kube-system/etcd-controller/\n>f+++++++++ pod-logs/kube-system/etcd-controller/etcd.txt\ncd+++++++++ pod-logs/kube-system/kube-apiserver-controller/\n>f+++++++++ pod-logs/kube-system/kube-apiserver-controller/kube-apiserver.txt\ncd+++++++++ pod-logs/kube-system/kube-controller-manager-controller/\n>f+++++++++ pod-logs/kube-system/kube-controller-manager-controller/kube-controller-manager.txt\ncd+++++++++ pod-logs/kube-system/kube-proxy-r75wb/\n>f+++++++++ pod-logs/kube-system/kube-proxy-r75wb/kube-proxy.txt\ncd+++++++++ pod-logs/kube-system/kube-scheduler-controller/\n>f+++++++++ pod-logs/kube-system/kube-scheduler-controller/kube-scheduler.txt\ncd+++++++++ pod-logs/kube-system/kube-vip-controller/\n>f+++++++++ pod-logs/kube-system/kube-vip-controller/kube-vip.txt\ncd+++++++++ pod-logs/secretgen-controller/\ncd+++++++++ pod-logs/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/\n>f+++++++++ pod-logs/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/secretgen-controller.txt\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ pod-logs/",
                                "cd+++++++++ pod-logs/envoy-gateway-system/",
                                "cd+++++++++ pod-logs/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/",
                                ">f+++++++++ pod-logs/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/envoy-gateway.txt",
                                "cd+++++++++ pod-logs/failed-pods/",
                                "cd+++++++++ pod-logs/failed-pods/envoy-gateway-system/",
                                "cd+++++++++ pod-logs/failed-pods/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/",
                                ">f+++++++++ pod-logs/failed-pods/envoy-gateway-system/envoy-gateway-78446f96c9-4vkv7/envoy-gateway.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/cilium-operator.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/apply-sysctl-overwrites.txt",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/cilium-agent.txt",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/clean-cilium-state.txt",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/config.txt",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/install-cni-binaries.txt",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/mount-bpf-fs.txt",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/cilium-wprkr/mount-cgroup.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/coredns-5dd5756b68-2kp5r/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/coredns-5dd5756b68-2kp5r/coredns.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-524xt/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-524xt/coredns.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-cfxp8/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/coredns-77cccfdc44-cfxp8/coredns.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/etcd-controller/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/etcd-controller/etcd.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/kube-apiserver-controller/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/kube-apiserver-controller/kube-apiserver.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/kube-controller-manager-controller/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/kube-controller-manager-controller/kube-controller-manager.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/kube-proxy-r75wb/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/kube-proxy-r75wb/kube-proxy.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/kube-scheduler-controller/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/kube-scheduler-controller/kube-scheduler.txt",
                                "cd+++++++++ pod-logs/failed-pods/kube-system/kube-vip-controller/",
                                ">f+++++++++ pod-logs/failed-pods/kube-system/kube-vip-controller/kube-vip.txt",
                                "cd+++++++++ pod-logs/failed-pods/secretgen-controller/",
                                "cd+++++++++ pod-logs/failed-pods/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/",
                                ">f+++++++++ pod-logs/failed-pods/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/secretgen-controller.txt",
                                "cd+++++++++ pod-logs/kube-system/",
                                "cd+++++++++ pod-logs/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/",
                                ">f+++++++++ pod-logs/kube-system/cilium-operator-7fcd8d6ffd-rnfn8/cilium-operator.txt",
                                "cd+++++++++ pod-logs/kube-system/cilium-wprkr/",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/apply-sysctl-overwrites.txt",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/cilium-agent.txt",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/clean-cilium-state.txt",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/config.txt",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/install-cni-binaries.txt",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/mount-bpf-fs.txt",
                                ">f+++++++++ pod-logs/kube-system/cilium-wprkr/mount-cgroup.txt",
                                "cd+++++++++ pod-logs/kube-system/coredns-5dd5756b68-2kp5r/",
                                ">f+++++++++ pod-logs/kube-system/coredns-5dd5756b68-2kp5r/coredns.txt",
                                "cd+++++++++ pod-logs/kube-system/coredns-77cccfdc44-524xt/",
                                ">f+++++++++ pod-logs/kube-system/coredns-77cccfdc44-524xt/coredns.txt",
                                "cd+++++++++ pod-logs/kube-system/coredns-77cccfdc44-cfxp8/",
                                ">f+++++++++ pod-logs/kube-system/coredns-77cccfdc44-cfxp8/coredns.txt",
                                "cd+++++++++ pod-logs/kube-system/etcd-controller/",
                                ">f+++++++++ pod-logs/kube-system/etcd-controller/etcd.txt",
                                "cd+++++++++ pod-logs/kube-system/kube-apiserver-controller/",
                                ">f+++++++++ pod-logs/kube-system/kube-apiserver-controller/kube-apiserver.txt",
                                "cd+++++++++ pod-logs/kube-system/kube-controller-manager-controller/",
                                ">f+++++++++ pod-logs/kube-system/kube-controller-manager-controller/kube-controller-manager.txt",
                                "cd+++++++++ pod-logs/kube-system/kube-proxy-r75wb/",
                                ">f+++++++++ pod-logs/kube-system/kube-proxy-r75wb/kube-proxy.txt",
                                "cd+++++++++ pod-logs/kube-system/kube-scheduler-controller/",
                                ">f+++++++++ pod-logs/kube-system/kube-scheduler-controller/kube-scheduler.txt",
                                "cd+++++++++ pod-logs/kube-system/kube-vip-controller/",
                                ">f+++++++++ pod-logs/kube-system/kube-vip-controller/kube-vip.txt",
                                "cd+++++++++ pod-logs/secretgen-controller/",
                                "cd+++++++++ pod-logs/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/",
                                ">f+++++++++ pod-logs/secretgen-controller/secretgen-controller-ffb97c6dc-z4ssl/secretgen-controller.txt"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000001f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:47.037707Z",
                            "start": "2026-06-30T18:40:46.502209Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000024",
                        "name": "Downloads pod logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/prometheus",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/prometheus",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/prometheus",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/prometheus",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:47.302178Z",
                            "start": "2026-06-30T18:40:47.050523Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000028",
                        "name": "creating directory for helm release descriptions"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nNAMESPACES=$(kubectl get namespaces -o json | jq -r '.items[].metadata.name')\nfor NS in $NAMESPACES; do\n  SERVICES=$(kubectl get svc -n $NS -o json | jq -r '.items[] | select(.spec.ports[].name==\"metrics\") | .metadata.name')\n  for SVC in $SERVICES; do\n    PORT=$(kubectl get svc $SVC -n $NS -o json | jq -r '.spec.ports[] | select(.name==\"metrics\") | .port')\n    echo \"Scraping $SVC.$NS:$PORT/metrics:\"\n    curl \"$SVC.$NS:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$NS-$SVC.txt || true\n  done\ndone",
                            "delta": "0:00:00.803848",
                            "end": "2026-06-30 18:40:48.366589",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nNAMESPACES=$(kubectl get namespaces -o json | jq -r '.items[].metadata.name')\nfor NS in $NAMESPACES; do\n  SERVICES=$(kubectl get svc -n $NS -o json | jq -r '.items[] | select(.spec.ports[].name==\"metrics\") | .metadata.name')\n  for SVC in $SERVICES; do\n    PORT=$(kubectl get svc $SVC -n $NS -o json | jq -r '.spec.ports[] | select(.name==\"metrics\") | .port')\n    echo \"Scraping $SVC.$NS:$PORT/metrics:\"\n    curl \"$SVC.$NS:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$NS-$SVC.txt || true\n  done\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000029-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:47.562741",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Scraping envoy-gateway.envoy-gateway-system:19001/metrics:\n  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n\r  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: envoy-gateway.envoy-gateway-system\nScraping kube-dns.kube-system:9153/metrics:\n  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n\r  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: kube-dns.kube-system",
                            "stdout_lines": [
                                "Scraping envoy-gateway.envoy-gateway-system:19001/metrics:",
                                "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current",
                                "                                 Dload  Upload   Total   Spent    Left  Speed",
                                "",
                                "  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: envoy-gateway.envoy-gateway-system",
                                "Scraping kube-dns.kube-system:9153/metrics:",
                                "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current",
                                "                                 Dload  Upload   Total   Spent    Left  Speed",
                                "",
                                "  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: kube-dns.kube-system"
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000029-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:48.851957Z",
                            "start": "2026-06-30T18:40:47.333067Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000029",
                        "name": "Get metrics from exporter services in all namespaces"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nmgr_endpoints=$(kubectl get endpoints -n ceph -l component=manager -o json | jq -r '.items[].subsets[].addresses[].ip')\necho \"ceph-mgr endpoints: $mgr_endpoints\"\nfor endpoint in $mgr_endpoints; do\n  echo \"checking ceph-mgr at $endpoint\"\n  metrics_curl=\"curl $endpoint:9283/metrics\"\n  op=$(eval \"$metrics_curl\")\n  if [[ -n $op ]]; then\n    curl $endpoint:9283/metrics >> \"/tmp/logs\"/prometheus/ceph-ceph-mgr.txt\n    break\n  else\n    echo \"$endpoint is a standby ceph-mgr. Trying next endpoint\"\n  fi\ndone",
                            "delta": "0:00:00.091490",
                            "end": "2026-06-30 18:40:49.203860",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nmgr_endpoints=$(kubectl get endpoints -n ceph -l component=manager -o json | jq -r '.items[].subsets[].addresses[].ip')\necho \"ceph-mgr endpoints: $mgr_endpoints\"\nfor endpoint in $mgr_endpoints; do\n  echo \"checking ceph-mgr at $endpoint\"\n  metrics_curl=\"curl $endpoint:9283/metrics\"\n  op=$(eval \"$metrics_curl\")\n  if [[ -n $op ]]; then\n    curl $endpoint:9283/metrics >> \"/tmp/logs\"/prometheus/ceph-ceph-mgr.txt\n    break\n  else\n    echo \"$endpoint is a standby ceph-mgr. Trying next endpoint\"\n  fi\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000002a-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:49.112370",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "ceph-mgr endpoints: ",
                            "stdout_lines": [
                                "ceph-mgr endpoints: "
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000002a-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:49.395928Z",
                            "start": "2026-06-30T18:40:48.881339Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000002a",
                        "name": "Get ceph metrics from ceph-mgr"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nNAMESPACE=\"osh-infra\"\nAPP_LABEL=\"fluentd\"\nPODS=$(kubectl get pods -n $NAMESPACE -l application=$APP_LABEL -o json | jq -r '.items[].metadata.name')\nfor POD in $PODS; do\n  IP=$(kubectl get pod -n $NAMESPACE $POD -o json | jq -r '.status.podIP')\n  PORT=$(kubectl get pod -n $NAMESPACE $POD -o json |  jq -r '.spec.containers[0].ports[] | select(.name==\"metrics\") | .containerPort')\n  echo \"Scraping $POD at $IP:$PORT/metrics\"\n  curl \"$IP:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$POD.txt || true\ndone",
                            "delta": "0:00:00.087817",
                            "end": "2026-06-30 18:40:49.735764",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nNAMESPACE=\"osh-infra\"\nAPP_LABEL=\"fluentd\"\nPODS=$(kubectl get pods -n $NAMESPACE -l application=$APP_LABEL -o json | jq -r '.items[].metadata.name')\nfor POD in $PODS; do\n  IP=$(kubectl get pod -n $NAMESPACE $POD -o json | jq -r '.status.podIP')\n  PORT=$(kubectl get pod -n $NAMESPACE $POD -o json |  jq -r '.spec.containers[0].ports[] | select(.name==\"metrics\") | .containerPort')\n  echo \"Scraping $POD at $IP:$PORT/metrics\"\n  curl \"$IP:$PORT/metrics\" >> \"/tmp/logs\"/prometheus/$POD.txt || true\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000002b-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-30 18:40:49.647947",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-00000000002b-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:49.945257Z",
                            "start": "2026-06-30T18:40:49.427572Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000002b",
                        "name": "Get metrics from fluentd pods"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/tmp/logs/prometheus /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                            "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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.242:/tmp/logs/prometheus",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ prometheus/\n>f+++++++++ prometheus/envoy-gateway-system-envoy-gateway.txt\n>f+++++++++ prometheus/kube-system-kube-dns.txt\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ prometheus/",
                                ">f+++++++++ prometheus/envoy-gateway-system-envoy-gateway.txt",
                                ">f+++++++++ prometheus/kube-system-kube-dns.txt"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-000000000026",
                        "name": "gather-prom-metrics",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-prom-metrics"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:50.527470Z",
                            "start": "2026-06-30T18:40:49.952756Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-00000000002c",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/selenium",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/selenium",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/selenium",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/selenium",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:50.784880Z",
                            "start": "2026-06-30T18:40:50.536778Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000030",
                        "name": "creating directory for helm release descriptions"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -x\ncp /tmp/artifacts/* /tmp/logs/selenium/.",
                            "delta": "0:00:00.011146",
                            "end": "2026-06-30 18:40:51.062925",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -x\ncp /tmp/artifacts/* /tmp/logs/selenium/.",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000031-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-06-30 18:40:51.051779",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "+ cp '/tmp/artifacts/*' /tmp/logs/selenium/.\ncp: cannot stat '/tmp/artifacts/*': No such file or directory",
                            "stdout_lines": [
                                "+ cp '/tmp/artifacts/*' /tmp/logs/selenium/.",
                                "cp: cannot stat '/tmp/artifacts/*': No such file or directory"
                            ],
                            "zuul_log_id": "0242ac17-0010-d0fc-1eec-000000000031-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:51.336496Z",
                            "start": "2026-06-30T18:40:50.814022Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000031",
                        "name": "Get selenium data"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/tmp/logs/selenium /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                            "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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.242:/tmp/logs/selenium",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ selenium/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ selenium/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d0fc-1eec-00000000002e",
                        "name": "gather-selenium-data",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-selenium-data"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:51.855075Z",
                            "start": "2026-06-30T18:40:51.341566Z"
                        },
                        "id": "0242ac17-0010-d0fc-1eec-000000000032",
                        "name": "Downloads logs to executor"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 23,
            "failures": 0,
            "ignored": 2,
            "ok": 23,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "1",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:40:55.875794Z",
                    "start": "2026-06-30T18:40:52.611475Z"
                },
                "id": "0242ac17-0010-03b2-a198-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-03b2-a198-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:52.668832Z",
                            "start": "2026-06-30T18:40:52.623601Z"
                        },
                        "id": "0242ac17-0010-03b2-a198-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-03b2-a198-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:52.727004Z",
                            "start": "2026-06-30T18:40:52.679949Z"
                        },
                        "id": "0242ac17-0010-03b2-a198-000000000009",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-03b2-a198-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:53.561958Z",
                            "start": "2026-06-30T18:40:52.731901Z"
                        },
                        "id": "0242ac17-0010-03b2-a198-00000000000a",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/logs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@199.204.45.242:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs",
                                        "src": "logs"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@199.204.45.242:/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/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts",
                                        "src": "artifacts"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/docs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@199.204.45.242:/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/e1384d86a54c47b9aba5a8c2983071e6/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-03b2-a198-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:55.199454Z",
                            "start": "2026-06-30T18:40:53.569740Z"
                        },
                        "id": "0242ac17-0010-03b2-a198-00000000000c",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts/* /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.006306",
                                    "end": "2026-06-30 18:40:55.598970",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/artifacts/* /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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-30 18:40:55.592664",
                                    "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/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/docs/* /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007501",
                                    "end": "2026-06-30 18:40:55.824320",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/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/e1384d86a54c47b9aba5a8c2983071e6/work/docs/* /var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/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-30 18:40:55.816819",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-03b2-a198-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:55.875794Z",
                            "start": "2026-06-30T18:40:55.210539Z"
                        },
                        "id": "0242ac17-0010-03b2-a198-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-06-30T18:40:56.407666Z",
                    "start": "2026-06-30T18:40:55.889183Z"
                },
                "id": "0242ac17-0010-03b2-a198-000000000013",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC0IIhkXpVlyFADeJ6BrRPxy4kfUNnb0uYUdPFERV152P/xA2UTYRR2oXgI9pA6LIpeY1d6AskrQO9Z4wtihAD+BcVF87yNgBDG6ZVSkc2fuZ1sVbCIZ9OGgLsqK4VZx35y7bqizHog2imWYBRl9jrMR9KTXZT+GSfW8h+h7c8UEBo290ll7TXW6SElYIELNgF8SQugpnpBfhLGAru+Fni1SrtHLnr5ZKdjs0231W3/Z1kqLV/d9MT01JbNx50T60hYoMKVE1vXKjwMlBaV279tIpy7sUJ8Dq6NoZzFG0S9Dfo3hz74YcYSeFuiDTsjeAxoSWY+C8XCO9Uhn3oD/wCll7rdZh+EEit+vgaqXD0bkr+5txvqM7V7jGd964opO2cVk3kk1sZ/O41cYYViY8OQuKr/+Nm964++THTDrlkCIZ+xL6vLUT3gRkHNLyKpHJgbgvy86m+c0Fb0S8I7aZn58cBiTbqlFHplXFQ4M6JyON95xCnPCV4bwnC4aJX3oOM= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQC0IIhkXpVlyFADeJ6BrRPxy4kfUNnb0uYUdPFERV152P/xA2UTYRR2oXgI9pA6LIpeY1d6AskrQO9Z4wtihAD+BcVF87yNgBDG6ZVSkc2fuZ1sVbCIZ9OGgLsqK4VZx35y7bqizHog2imWYBRl9jrMR9KTXZT+GSfW8h+h7c8UEBo290ll7TXW6SElYIELNgF8SQugpnpBfhLGAru+Fni1SrtHLnr5ZKdjs0231W3/Z1kqLV/d9MT01JbNx50T60hYoMKVE1vXKjwMlBaV279tIpy7sUJ8Dq6NoZzFG0S9Dfo3hz74YcYSeFuiDTsjeAxoSWY+C8XCO9Uhn3oD/wCll7rdZh+EEit+vgaqXD0bkr+5txvqM7V7jGd964opO2cVk3kk1sZ/O41cYYViY8OQuKr/+Nm964++THTDrlkCIZ+xL6vLUT3gRkHNLyKpHJgbgvy86m+c0Fb0S8I7aZn58cBiTbqlFHplXFQ4M6JyON95xCnPCV4bwnC4aJX3oOM= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "absent",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-03b2-a198-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/e1384d86a54c47b9aba5a8c2983071e6/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-30T18:40:56.407666Z",
                            "start": "2026-06-30T18:40:55.896084Z"
                        },
                        "id": "0242ac17-0010-03b2-a198-000000000018",
                        "name": "Remove the build SSH key from all nodes"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 4,
            "failures": 0,
            "ignored": 0,
            "ok": 5,
            "rescued": 0,
            "skipped": 1,
            "unreachable": 0
        }
    },
    "trusted": true
}
]
