[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-12T17:25:44.541906Z",
                    "start": "2026-05-12T17:25:42.068413Z"
                },
                "id": "0242ac17-0010-6078-329b-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-05-12",
                                    "day": "12",
                                    "epoch": "1778606742",
                                    "epoch_int": "1778606742",
                                    "hour": "17",
                                    "iso8601": "2026-05-12T17:25:42Z",
                                    "iso8601_basic": "20260512T172542863645",
                                    "iso8601_basic_short": "20260512T172542",
                                    "iso8601_micro": "2026-05-12T17:25:42.863645Z",
                                    "minute": "25",
                                    "month": "05",
                                    "second": "42",
                                    "time": "17:25:42",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "19",
                                    "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/0c01494e295942688d283c8581db4086/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work",
                                    "HOSTNAME": "2d72f0692154",
                                    "KUBECONFIG": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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": "3530055",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-w7bGDQLxD6Lz/agent.3530054",
                                    "TMP": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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": 2.74267578125,
                                    "1m": 2.3916015625,
                                    "5m": 2.5634765625
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 6118,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 16105,
                                        "used": 15985
                                    },
                                    "real": {
                                        "free": 6118,
                                        "total": 32090,
                                        "used": 25972
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/kube",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 151992640,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 111948077,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 49549127,
                                        "inode_total": 67108864,
                                        "inode_used": 17559737,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 622561853440,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8460524,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32141056,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16265437,
                                        "inode_total": 20643840,
                                        "inode_used": 4378403,
                                        "mount": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 34654306304,
                                        "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": 42270472,
                                "ansible_user_dir": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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-05-12T17:25:42.925734Z",
                            "start": "2026-05-12T17:25:42.075899Z"
                        },
                        "id": "0242ac17-0010-6078-329b-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:42.948062Z",
                            "start": "2026-05-12T17:25:42.929709Z"
                        },
                        "id": "0242ac17-0010-6078-329b-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "0c0/oss/0c01494e295942688d283c8581db4086"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:42.994688Z",
                            "start": "2026-05-12T17:25:42.962294Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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: 7c3a90a0-4e27-11f1-91b6-2c83752e2554\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:43.044195Z",
                            "start": "2026-05-12T17:25:43.001606Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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: np0000173786\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-6078-329b-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:43.154915Z",
                            "start": "2026-05-12T17:25:43.048817Z"
                        },
                        "id": "0242ac17-0010-6078-329b-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:43.578609Z",
                            "start": "2026-05-12T17:25:43.166538Z"
                        },
                        "id": "0242ac17-0010-6078-329b-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "accab7c2f146ffff6fca83ccbe4d9fa23a862da3",
                            "dest": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "accab7c2f146ffff6fca83ccbe4d9fa23a862da3",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/.ansible/tmp/ansible-tmp-1778606743.6136243-84-146674358834877/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "182b5897535fd63bd0ca4264fc97c890",
                            "mode": "0644",
                            "owner": "root",
                            "size": 349389,
                            "src": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/.ansible/tmp/ansible-tmp-1778606743.6136243-84-146674358834877/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:44.541906Z",
                            "start": "2026-05-12T17:25:43.584643Z"
                        },
                        "id": "0242ac17-0010-6078-329b-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-05-12T17:25:51.926502Z",
                    "start": "2026-05-12T17:25:44.550420Z"
                },
                "id": "0242ac17-0010-6078-329b-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/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:44.776918Z",
                            "start": "2026-05-12T17:25:44.559442Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:44.825307Z",
                            "start": "2026-05-12T17:25:44.788288Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.695774",
                            "end": "2026-05-12 17:25:45.913833",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_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-6078-329b-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-12 17:25:45.218059",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa.pub\nThe key fingerprint is:\nSHA256:p/cvEvoOU55V21scRPbbqeIrcLoIiREX3nqiQ+v8dIs zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|   .          .+ |\n|  . o         o .|\n| . o .        ...|\n|  o .        . +=|\n| o o .  S o . .o=|\n|. = +  . *.o  . o|\n| = + .  B.+o . . |\n|o o + o..=o.o    |\n| o.E o ..o++oo.  |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:p/cvEvoOU55V21scRPbbqeIrcLoIiREX3nqiQ+v8dIs zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|   .          .+ |",
                                "|  . o         o .|",
                                "| . o .        ...|",
                                "|  o .        . +=|",
                                "| o o .  S o . .o=|",
                                "|. = +  . *.o  . o|",
                                "| = + .  B.+o . . |",
                                "|o o + o..=o.o    |",
                                "| o.E o ..o++oo.  |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-6078-329b-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:45.965036Z",
                            "start": "2026-05-12T17:25:44.847056Z"
                        },
                        "id": "0242ac17-0010-6078-329b-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:46.005159Z",
                            "start": "2026-05-12T17:25:45.970199Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:46.047321Z",
                            "start": "2026-05-12T17:25:46.022357Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCXDtmSpInhtsF2aO93wrINcGJ0ONJPZSwtXcvnvliPc/rbcWl/IG1cH6qAvC8u8g4dfnXSvUUrtAoXW+jFy5yb7+BiTxjH4bVZzWshH2oaj62VkpQAgljxbxNoAPumxw9ptCYZv7DHxNHQyfhY5GXALypHglJEz55LfGuismytT+vbQN83JqdxHJ6lj/zKlRaDkc9NZQ2lFKOvhthLuEYBDWfMTd9YDA293Sc2W9p9h3lJzp/HI7TDAAhB7RWaaXAu62DJLAwDz6CXFZRcQC+aoa+pgNQjpGWPk/t/SLJNk/kwuiFWyjFtPRbuV8mIy2jcVAOaMW+GydkGYoyL4PCppj98cBjLVyWVjYOIVUSDIUqq0OWibr/6ylCzbN4ZbLXG868PG9R4ORhnCn9Fx1gU+DNtsMV3qLpLFkMzb1J55XrMQSO2TKvUeC/IQp0d7ZxzW8jwhYi4m1sya2prMGt4j+NXex14li7WpjhsoHzoDontH2/BfOg9q4o6CfvUgLE= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCXDtmSpInhtsF2aO93wrINcGJ0ONJPZSwtXcvnvliPc/rbcWl/IG1cH6qAvC8u8g4dfnXSvUUrtAoXW+jFy5yb7+BiTxjH4bVZzWshH2oaj62VkpQAgljxbxNoAPumxw9ptCYZv7DHxNHQyfhY5GXALypHglJEz55LfGuismytT+vbQN83JqdxHJ6lj/zKlRaDkc9NZQ2lFKOvhthLuEYBDWfMTd9YDA293Sc2W9p9h3lJzp/HI7TDAAhB7RWaaXAu62DJLAwDz6CXFZRcQC+aoa+pgNQjpGWPk/t/SLJNk/kwuiFWyjFtPRbuV8mIy2jcVAOaMW+GydkGYoyL4PCppj98cBjLVyWVjYOIVUSDIUqq0OWibr/6ylCzbN4ZbLXG868PG9R4ORhnCn9Fx1gU+DNtsMV3qLpLFkMzb1J55XrMQSO2TKvUeC/IQp0d7ZxzW8jwhYi4m1sya2prMGt4j+NXex14li7WpjhsoHzoDontH2/BfOg9q4o6CfvUgLE= 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-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:46.580545Z",
                            "start": "2026-05-12T17:25:46.058437Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:46.821972Z",
                            "start": "2026-05-12T17:25:46.586649Z"
                        },
                        "id": "0242ac17-0010-6078-329b-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "3e12b003d0aff78a5041a51afd296e7c1dd48f16",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "0c01494e295942688d283c8581db4086_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "3e12b003d0aff78a5041a51afd296e7c1dd48f16",
                                    "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-1778606746.8700202-190-136068282802870/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "0ce5a76c33c2e9cc4a56848e911eda69",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1778606746.8700202-190-136068282802870/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:47.389290Z",
                            "start": "2026-05-12T17:25:46.829365Z"
                        },
                        "id": "0242ac17-0010-6078-329b-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "c4c43711b933b31c8c3e669e98f3de079fa63ff9",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "0c01494e295942688d283c8581db4086_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "c4c43711b933b31c8c3e669e98f3de079fa63ff9",
                                    "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-1778606747.440854-200-208478610117652/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "10cec60525876d627d2a4976315d05c2",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1778606747.440854-200-208478610117652/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:47.955990Z",
                            "start": "2026-05-12T17:25:47.395516Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:47.994075Z",
                            "start": "2026-05-12T17:25:47.961081Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:48.359897Z",
                            "start": "2026-05-12T17:25:48.000764Z"
                        },
                        "id": "0242ac17-0010-6078-329b-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa"
                            ],
                            "delta": "0:00:00.013830",
                            "end": "2026-05-12 17:25:48.607063",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_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-6078-329b-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-12 17:25:48.593233",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/0c01494e295942688d283c8581db4086_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-6078-329b-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:48.653767Z",
                            "start": "2026-05-12T17:25:48.379236Z"
                        },
                        "id": "0242ac17-0010-6078-329b-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:49.038131Z",
                            "start": "2026-05-12T17:25:48.658758Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:49.070688Z",
                            "start": "2026-05-12T17:25:49.045838Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:49.475045Z",
                            "start": "2026-05-12T17:25:49.085873Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:50.585483Z",
                            "start": "2026-05-12T17:25:49.480560Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:51.266529Z",
                            "start": "2026-05-12T17:25:50.595130Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-6078-329b-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:51.926502Z",
                            "start": "2026-05-12T17:25:51.276395Z"
                        },
                        "id": "0242ac17-0010-6078-329b-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-05-12T17:25:55.723233Z",
                    "start": "2026-05-12T17:25:52.700157Z"
                },
                "id": "0242ac17-0010-9398-3867-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-1778606752.7558796-5-135155431758420/uv-x86_64-unknown-linux-gnunzgo8a3r.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-1778606752.7558796-5-135155431758420/uv-x86_64-unknown-linux-gnunzgo8a3r.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-9398-3867-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:55.167900Z",
                            "start": "2026-05-12T17:25:52.712719Z"
                        },
                        "id": "0242ac17-0010-9398-3867-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.014525",
                            "end": "2026-05-12 17:25:55.275527",
                            "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-9398-3867-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-12 17:25:55.261002",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-9398-3867-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-9398-3867-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:55.723233Z",
                            "start": "2026-05-12T17:25:55.202016Z"
                        },
                        "id": "0242ac17-0010-9398-3867-000000000008",
                        "name": "Print version"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 2,
            "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-05-12T17:29:22.810921Z",
                    "start": "2026-05-12T17:25:56.418420Z"
                },
                "id": "0242ac17-0010-92e7-c8cd-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "accab7c2f146ffff6fca83ccbe4d9fa23a862da3",
                            "dest": "src/github.com/vexxhost/atmosphere.common/inventory.yaml",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "accab7c2f146ffff6fca83ccbe4d9fa23a862da3",
                                    "content": null,
                                    "dest": "src/github.com/vexxhost/atmosphere.common",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1778606756.475525-5-76523800695291/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "182b5897535fd63bd0ca4264fc97c890",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 349389,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1778606756.475525-5-76523800695291/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:57.439736Z",
                            "start": "2026-05-12T17:25:56.430674Z"
                        },
                        "id": "0242ac17-0010-92e7-c8cd-000000000004",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "after": null,
                                    "attributes": null,
                                    "backup": false,
                                    "before": null,
                                    "encoding": "utf-8",
                                    "group": null,
                                    "mode": null,
                                    "owner": null,
                                    "path": "src/github.com/vexxhost/atmosphere.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
                                }
                            },
                            "msg": "1 replacements made",
                            "rc": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:25:57.825156Z",
                            "start": "2026-05-12T17:25:57.446277Z"
                        },
                        "id": "0242ac17-0010-92e7-c8cd-000000000005",
                        "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:03:24.758416",
                            "end": "2026-05-12 17:29:22.656760",
                            "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-92e7-c8cd-000000000006-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-12 17:25:57.898344",
                            "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 ansible-core (2.3MiB)\n Downloading cryptography\n Downloading pygments\n Downloading kubernetes\n Downloading ansible-core\nInstalled 47 packages in 47ms\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 12 May 2026  17:26:24 +0000 (0:00:00.032)       0:00:00.032 ***********\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Install Debian packages] *************************************************\nTuesday 12 May 2026  17:26:26 +0000 (0:00:02.332)       0:00:02.364 ***********\nok: [controller]\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 12 May 2026  17:26:33 +0000 (0:00:07.262)       0:00:09.627 ***********\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nTuesday 12 May 2026  17:26:36 +0000 (0:00:02.898)       0:00:12.525 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nTuesday 12 May 2026  17:26:37 +0000 (0:00:00.482)       0:00:13.008 ***********\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 12 May 2026  17:26:38 +0000 (0:00:01.485)       0:00:14.494 ***********\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\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}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\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}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\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 12 May 2026  17:26:39 +0000 (0:00:01.028)       0:00:15.522 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nTuesday 12 May 2026  17:26:39 +0000 (0:00:00.449)       0:00:15.972 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nTuesday 12 May 2026  17:26:40 +0000 (0:00:00.291)       0:00:16.263 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nTuesday 12 May 2026  17:26:40 +0000 (0:00:00.033)       0:00:16.297 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nTuesday 12 May 2026  17:26:40 +0000 (0:00:00.046)       0:00:16.343 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nTuesday 12 May 2026  17:26:41 +0000 (0:00:01.030)       0:00:17.374 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nTuesday 12 May 2026  17:26:41 +0000 (0:00:00.309)       0:00:17.683 ***********\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 12 May 2026  17:26:41 +0000 (0:00:00.048)       0:00:17.731 ***********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:26:42 +0000 (0:00:00.870)       0:00:18.602 ***********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 12 May 2026  17:26:43 +0000 (0:00:00.401)       0:00:19.003 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nTuesday 12 May 2026  17:26:43 +0000 (0:00:00.036)       0:00:19.040 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:26:43 +0000 (0:00:00.316)       0:00:19.356 ***********\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 12 May 2026  17:26:43 +0000 (0:00:00.073)       0:00:19.430 ***********\n[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:26:44 +0000 (0:00:00.887)       0:00:20.317 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:26:44 +0000 (0:00:00.028)       0:00:20.346 ***********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 12 May 2026  17:26:44 +0000 (0:00:00.322)       0:00:20.669 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:26:45 +0000 (0:00:01.060)       0:00:21.730 ***********\nok: [controller] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.3/containerd-2.2.3-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nTuesday 12 May 2026  17:26:45 +0000 (0:00:00.068)       0:00:21.799 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:26:46 +0000 (0:00:00.952)       0:00:22.752 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 12 May 2026  17:26:49 +0000 (0:00:03.181)       0:00:25.934 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 12 May 2026  17:26:49 +0000 (0:00:00.027)       0:00:25.961 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 12 May 2026  17:26:49 +0000 (0:00:00.029)       0:00:25.991 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 12 May 2026  17:26:50 +0000 (0:00:00.030)       0:00:26.021 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 12 May 2026  17:26:57 +0000 (0:00:07.231)       0:00:33.253 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 12 May 2026  17:26:57 +0000 (0:00:00.704)       0:00:33.957 ***********\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 12 May 2026  17:26:59 +0000 (0:00:01.437)       0:00:35.395 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 12 May 2026  17:27:00 +0000 (0:00:00.808)       0:00:36.203 ***********\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nTuesday 12 May 2026  17:27:00 +0000 (0:00:00.006)       0:00:36.210 ***********\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nTuesday 12 May 2026  17:27:01 +0000 (0:00:00.901)       0:00:37.111 ***********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 12 May 2026  17:27:02 +0000 (0:00:00.957)       0:00:38.069 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nTuesday 12 May 2026  17:27:02 +0000 (0:00:00.761)       0:00:38.830 ***********\n[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000173786'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\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes_upgrade_check/tasks/main.yml:16:3\n\n14\n15 ---\n16 - name: Retrieve the \"kubeadm-config\" ConfigMap\n     ^ column 3\n\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on np0000173786'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 12 May 2026  17:27:03 +0000 (0:00:00.720)       0:00:39.551 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nTuesday 12 May 2026  17:27:03 +0000 (0:00:00.030)       0:00:39.581 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nTuesday 12 May 2026  17:27:03 +0000 (0:00:00.031)       0:00:39.612 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nTuesday 12 May 2026  17:27:03 +0000 (0:00:00.035)       0:00:39.647 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nTuesday 12 May 2026  17:27:03 +0000 (0:00:00.032)       0:00:39.680 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:27:03 +0000 (0:00:00.032)       0:00:39.712 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:27:04 +0000 (0:00:00.344)       0:00:40.057 ***********\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 12 May 2026  17:27:04 +0000 (0:00:00.044)       0:00:40.102 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:27:04 +0000 (0:00:00.779)       0:00:40.881 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:27:04 +0000 (0:00:00.033)       0:00:40.915 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:27:05 +0000 (0:00:00.311)       0:00:41.227 ***********\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 12 May 2026  17:27:05 +0000 (0:00:00.039)       0:00:41.266 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:27:06 +0000 (0:00:00.860)       0:00:42.127 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nTuesday 12 May 2026  17:27:06 +0000 (0:00:00.045)       0:00:42.172 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nTuesday 12 May 2026  17:27:06 +0000 (0:00:00.025)       0:00:42.198 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nTuesday 12 May 2026  17:27:06 +0000 (0:00:00.026)       0:00:42.224 ***********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nTuesday 12 May 2026  17:27:06 +0000 (0:00:00.027)       0:00:42.252 ***********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nTuesday 12 May 2026  17:27:07 +0000 (0:00:01.003)       0:00:43.255 ***********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nTuesday 12 May 2026  17:27:07 +0000 (0:00:00.662)       0:00:43.918 ***********\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 12 May 2026  17:27:09 +0000 (0:00:01.496)       0:00:45.414 ***********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nTuesday 12 May 2026  17:27:10 +0000 (0:00:00.809)       0:00:46.224 ***********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nTuesday 12 May 2026  17:27:10 +0000 (0:00:00.003)       0:00:46.227 ***********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:27:10 +0000 (0:00:00.508)       0:00:46.735 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:27:11 +0000 (0:00:00.319)       0:00:47.055 ***********\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 12 May 2026  17:27:11 +0000 (0:00:00.060)       0:00:47.116 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:27:11 +0000 (0:00:00.804)       0:00:47.920 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:27:13 +0000 (0:00:01.677)       0:00:49.598 ***********\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 12 May 2026  17:27:13 +0000 (0:00:00.059)       0:00:49.658 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:27:14 +0000 (0:00:00.853)       0:00:50.511 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nTuesday 12 May 2026  17:27:16 +0000 (0:00:01.661)       0:00:52.173 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nTuesday 12 May 2026  17:27:16 +0000 (0:00:00.718)       0:00:52.891 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:27:17 +0000 (0:00:00.313)       0:00:53.205 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:27:17 +0000 (0:00:00.311)       0:00:53.516 ***********\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 12 May 2026  17:27:17 +0000 (0:00:00.057)       0:00:53.573 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:27:18 +0000 (0:00:01.051)       0:00:54.625 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nTuesday 12 May 2026  17:27:21 +0000 (0:00:02.936)       0:00:57.561 ***********\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 12 May 2026  17:27:21 +0000 (0:00:00.052)       0:00:57.614 ***********\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nTuesday 12 May 2026  17:27:22 +0000 (0:00:01.042)       0:00:58.656 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nTuesday 12 May 2026  17:27:23 +0000 (0:00:00.462)       0:00:59.119 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nTuesday 12 May 2026  17:27:23 +0000 (0:00:00.688)       0:00:59.808 ***********\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 12 May 2026  17:27:25 +0000 (0:00:01.422)       0:01:01.230 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:27:25 +0000 (0:00:00.321)       0:01:01.552 ***********\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 12 May 2026  17:27:25 +0000 (0:00:00.040)       0:01:01.592 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:27:26 +0000 (0:00:01.293)       0:01:02.885 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nTuesday 12 May 2026  17:27:26 +0000 (0:00:00.036)       0:01:02.922 ***********\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nTuesday 12 May 2026  17:27:26 +0000 (0:00:00.051)       0:01:02.974 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nTuesday 12 May 2026  17:27:27 +0000 (0:00:00.029)       0:01:03.003 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nTuesday 12 May 2026  17:27:30 +0000 (0:00:03.636)       0:01:06.640 ***********\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 12 May 2026  17:27:32 +0000 (0:00:02.177)       0:01:08.818 ***********\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 12 May 2026  17:27:33 +0000 (0:00:00.920)       0:01:09.738 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nTuesday 12 May 2026  17:27:34 +0000 (0:00:00.700)       0:01:10.438 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nTuesday 12 May 2026  17:27:35 +0000 (0:00:00.735)       0:01:11.174 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nTuesday 12 May 2026  17:27:35 +0000 (0:00:00.475)       0:01:11.650 ***********\n[ERROR]: Task failed: Conditional result was '' of type 'str', which evaluates to False. Conditionals must have a boolean result.\n\nTask failed.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:86:7\n\n84       register: kubelet_swapon\n85\n86     - name: Disable swap\n         ^ column 7\n\n<<< caused by >>>\n\nConditional result was '' of type 'str', which evaluates to False. Conditionals must have a boolean result.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11\n\n89       ignore_errors: \"{{ ansible_check_mode }}\"\n90       when:\n91         - kubelet_swapon.stdout\n             ^ column 11\n\nBroken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.\n\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result was '' of type 'str', which evaluates to False. Conditionals must have a boolean result.\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********\nTuesday 12 May 2026  17:27:35 +0000 (0:00:00.033)       0:01:11.684 ***********\n[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.\n[DEPRECATION WARNING]: Passing `warnings` to `exit_json` or `fail_json` is deprecated. This feature will be removed from ansible-core version 2.23. Use `AnsibleModule.warn` instead.\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nTuesday 12 May 2026  17:27:36 +0000 (0:00:00.758)       0:01:12.442 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nTuesday 12 May 2026  17:27:37 +0000 (0:00:00.696)       0:01:13.138 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nTuesday 12 May 2026  17:27:37 +0000 (0:00:00.752)       0:01:13.891 ***********\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nTuesday 12 May 2026  17:27:37 +0000 (0:00:00.005)       0:01:13.896 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nTuesday 12 May 2026  17:27:38 +0000 (0:00:00.932)       0:01:14.828 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nTuesday 12 May 2026  17:27:39 +0000 (0:00:00.803)       0:01:15.632 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nTuesday 12 May 2026  17:27:40 +0000 (0:00:01.042)       0:01:16.674 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nTuesday 12 May 2026  17:27:42 +0000 (0:00:01.685)       0:01:18.360 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nTuesday 12 May 2026  17:27:42 +0000 (0:00:00.441)       0:01:18.802 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nTuesday 12 May 2026  17:27:43 +0000 (0:00:00.595)       0:01:19.397 ***********\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 12 May 2026  17:27:43 +0000 (0:00:00.075)       0:01:19.473 ***********\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 12 May 2026  17:27:43 +0000 (0:00:00.075)       0:01:19.549 ***********\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nTuesday 12 May 2026  17:27:43 +0000 (0:00:00.310)       0:01:19.859 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nTuesday 12 May 2026  17:27:43 +0000 (0:00:00.037)       0:01:19.896 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nTuesday 12 May 2026  17:27:43 +0000 (0:00:00.043)       0:01:19.940 ***********\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nTuesday 12 May 2026  17:27:43 +0000 (0:00:00.035)       0:01:19.976 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.742)       0:01:20.718 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.748 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.033)       0:01:20.782 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.031)       0:01:20.813 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.030)       0:01:20.843 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.873 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.903 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nTuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.933 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nTuesday 12 May 2026  17:28:15 +0000 (0:00:30.527)       0:01:51.460 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nTuesday 12 May 2026  17:28:15 +0000 (0:00:00.315)       0:01:51.775 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nTuesday 12 May 2026  17:28:15 +0000 (0:00:00.024)       0:01:51.800 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nTuesday 12 May 2026  17:28:16 +0000 (0:00:00.312)       0:01:52.112 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nTuesday 12 May 2026  17:28:16 +0000 (0:00:00.306)       0:01:52.419 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nTuesday 12 May 2026  17:28:16 +0000 (0:00:00.326)       0:01:52.746 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nTuesday 12 May 2026  17:28:16 +0000 (0:00:00.035)       0:01:52.782 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nTuesday 12 May 2026  17:28:16 +0000 (0:00:00.037)       0:01:52.819 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nTuesday 12 May 2026  17:28:16 +0000 (0:00:00.042)       0:01:52.862 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nTuesday 12 May 2026  17:28:24 +0000 (0:00:08.013)       0:02:00.876 ***********\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nTuesday 12 May 2026  17:28:25 +0000 (0:00:00.863)       0:02:01.739 ***********\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nTuesday 12 May 2026  17:28:25 +0000 (0:00:00.039)       0:02:01.778 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nTuesday 12 May 2026  17:28:25 +0000 (0:00:00.036)       0:02:01.815 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nTuesday 12 May 2026  17:28:25 +0000 (0:00:00.033)       0:02:01.849 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nTuesday 12 May 2026  17:28:25 +0000 (0:00:00.035)       0:02:01.885 ***********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nTuesday 12 May 2026  17:28:25 +0000 (0:00:00.028)       0:02:01.913 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nTuesday 12 May 2026  17:28:26 +0000 (0:00:00.588)       0:02:02.501 ***********\nchanged: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nTuesday 12 May 2026  17:28:27 +0000 (0:00:01.030)       0:02:03.532 ***********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nTuesday 12 May 2026  17:28:28 +0000 (0:00:00.859)       0:02:04.391 ***********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nTuesday 12 May 2026  17:28:28 +0000 (0:00:00.312)       0:02:04.704 ***********\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nTuesday 12 May 2026  17:28:29 +0000 (0:00:01.033)       0:02:05.737 ***********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:28:30 +0000 (0:00:00.354)       0:02:06.091 ***********\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 12 May 2026  17:28:30 +0000 (0:00:00.038)       0:02:06.129 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:28:30 +0000 (0:00:00.669)       0:02:06.799 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nTuesday 12 May 2026  17:28:32 +0000 (0:00:01.745)       0:02:08.544 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nTuesday 12 May 2026  17:28:32 +0000 (0:00:00.436)       0:02:08.980 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nTuesday 12 May 2026  17:28:33 +0000 (0:00:00.367)       0:02:09.348 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nTuesday 12 May 2026  17:28:33 +0000 (0:00:00.373)       0:02:09.722 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nTuesday 12 May 2026  17:28:34 +0000 (0:00:00.313)       0:02:10.035 ***********\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nTuesday 12 May 2026  17:28:34 +0000 (0:00:00.307)       0:02:10.343 ***********\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nTuesday 12 May 2026  17:28:34 +0000 (0:00:00.051)       0:02:10.394 ***********\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 12 May 2026  17:28:34 +0000 (0:00:00.037)       0:02:10.431 ***********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nTuesday 12 May 2026  17:28:35 +0000 (0:00:00.888)       0:02:11.320 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nTuesday 12 May 2026  17:28:37 +0000 (0:00:02.088)       0:02:13.409 ***********\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 12 May 2026  17:28:37 +0000 (0:00:00.040)       0:02:13.449 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nTuesday 12 May 2026  17:28:38 +0000 (0:00:00.755)       0:02:14.205 ***********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nTuesday 12 May 2026  17:28:39 +0000 (0:00:00.897)       0:02:15.103 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nTuesday 12 May 2026  17:28:41 +0000 (0:00:02.173)       0:02:17.277 ***********\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 12 May 2026  17:28:41 +0000 (0:00:00.032)       0:02:17.309 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.envoy_gateway : Deploy Helm chart] *******************\nTuesday 12 May 2026  17:28:41 +0000 (0:00:00.636)       0:02:17.946 ***********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.envoy_gateway : Create GatewayClass] *****************\nTuesday 12 May 2026  17:29:11 +0000 (0:00:29.439)       0:02:47.386 ***********\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=118  changed=54   unreachable=0    failed=0    skipped=34   rescued=0    ignored=3\n\n\nTASKS RECAP ********************************************************************\nTuesday 12 May 2026  17:29:12 +0000 (0:00:00.834)       0:02:48.220 ***********\n===============================================================================\nvexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 30.53s\nvexxhost.kubernetes.envoy_gateway : Deploy Helm chart ------------------ 29.44s\nvexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 8.01s\nInstall Debian packages ------------------------------------------------- 7.26s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 7.23s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 3.64s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.18s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.94s\nGathering Facts --------------------------------------------------------- 2.90s\nGathering Facts --------------------------------------------------------- 2.33s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.18s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.17s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.09s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.89s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.75s\nvexxhost.kubernetes.kubelet : Configure short hostname ------------------ 1.69s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.68s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.66s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.50s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.49s\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 12 May 2026  17:29:13 +0000 (0:00:00.013)       0:00:00.013 ***********\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\n[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.\n[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.\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 12 May 2026  17:29:14 +0000 (0:00:01.427)       0:00:01.441 ***********\n===============================================================================\natmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.43s\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 12 May 2026  17:29:15 +0000 (0:00:00.013)       0:00:00.013 ***********\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\n[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.\n[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.\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 12 May 2026  17:29:17 +0000 (0:00:01.492)       0:00:01.506 ***********\n===============================================================================\natmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.49s\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 12 May 2026  17:29:18 +0000 (0:00:00.008)       0:00:00.008 ***********\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Wait for secretgen-controller deployment to be available] ****************\nTuesday 12 May 2026  17:29:19 +0000 (0:00:01.330)       0:00:01.339 ***********\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\nok: [controller]\n\nTASK [Create a test Password resource] *****************************************\nTuesday 12 May 2026  17:29:20 +0000 (0:00:00.964)       0:00:02.303 ***********\nchanged: [controller]\n\nTASK [Wait for test-password secret to be generated] ***************************\nTuesday 12 May 2026  17:29:21 +0000 (0:00:00.994)       0:00:03.298 ***********\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 12 May 2026  17:29:22 +0000 (0:00:00.785)       0:00:04.083 ***********\n===============================================================================\nGathering Facts --------------------------------------------------------- 1.33s\nCreate a test Password resource ----------------------------------------- 0.99s\nWait for secretgen-controller deployment to be available ---------------- 0.96s\nWait for test-password secret to be generated --------------------------- 0.79s\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 ansible-core (2.3MiB)",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading kubernetes",
                                " Downloading ansible-core",
                                "Installed 47 packages in 47ms",
                                "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 12 May 2026  17:26:24 +0000 (0:00:00.032)       0:00:00.032 ***********",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Install Debian packages] *************************************************",
                                "Tuesday 12 May 2026  17:26:26 +0000 (0:00:02.332)       0:00:02.364 ***********",
                                "ok: [controller]",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 12 May 2026  17:26:33 +0000 (0:00:07.262)       0:00:09.627 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Tuesday 12 May 2026  17:26:36 +0000 (0:00:02.898)       0:00:12.525 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Tuesday 12 May 2026  17:26:37 +0000 (0:00:00.482)       0:00:13.008 ***********",
                                "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 12 May 2026  17:26:38 +0000 (0:00:01.485)       0:00:14.494 ***********",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "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}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "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}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "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 12 May 2026  17:26:39 +0000 (0:00:01.028)       0:00:15.522 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Tuesday 12 May 2026  17:26:39 +0000 (0:00:00.449)       0:00:15.972 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Tuesday 12 May 2026  17:26:40 +0000 (0:00:00.291)       0:00:16.263 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Tuesday 12 May 2026  17:26:40 +0000 (0:00:00.033)       0:00:16.297 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Tuesday 12 May 2026  17:26:40 +0000 (0:00:00.046)       0:00:16.343 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Tuesday 12 May 2026  17:26:41 +0000 (0:00:01.030)       0:00:17.374 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Tuesday 12 May 2026  17:26:41 +0000 (0:00:00.309)       0:00:17.683 ***********",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 12 May 2026  17:26:41 +0000 (0:00:00.048)       0:00:17.731 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:26:42 +0000 (0:00:00.870)       0:00:18.602 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 12 May 2026  17:26:43 +0000 (0:00:00.401)       0:00:19.003 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Tuesday 12 May 2026  17:26:43 +0000 (0:00:00.036)       0:00:19.040 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:26:43 +0000 (0:00:00.316)       0:00:19.356 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 12 May 2026  17:26:43 +0000 (0:00:00.073)       0:00:19.430 ***********",
                                "[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:26:44 +0000 (0:00:00.887)       0:00:20.317 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:26:44 +0000 (0:00:00.028)       0:00:20.346 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 12 May 2026  17:26:44 +0000 (0:00:00.322)       0:00:20.669 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:26:45 +0000 (0:00:01.060)       0:00:21.730 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.3/containerd-2.2.3-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 12 May 2026  17:26:45 +0000 (0:00:00.068)       0:00:21.799 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:26:46 +0000 (0:00:00.952)       0:00:22.752 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 12 May 2026  17:26:49 +0000 (0:00:03.181)       0:00:25.934 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 12 May 2026  17:26:49 +0000 (0:00:00.027)       0:00:25.961 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 12 May 2026  17:26:49 +0000 (0:00:00.029)       0:00:25.991 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 12 May 2026  17:26:50 +0000 (0:00:00.030)       0:00:26.021 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 12 May 2026  17:26:57 +0000 (0:00:07.231)       0:00:33.253 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 12 May 2026  17:26:57 +0000 (0:00:00.704)       0:00:33.957 ***********",
                                "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 12 May 2026  17:26:59 +0000 (0:00:01.437)       0:00:35.395 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 12 May 2026  17:27:00 +0000 (0:00:00.808)       0:00:36.203 ***********",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Tuesday 12 May 2026  17:27:00 +0000 (0:00:00.006)       0:00:36.210 ***********",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Tuesday 12 May 2026  17:27:01 +0000 (0:00:00.901)       0:00:37.111 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 12 May 2026  17:27:02 +0000 (0:00:00.957)       0:00:38.069 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Tuesday 12 May 2026  17:27:02 +0000 (0:00:00.761)       0:00:38.830 ***********",
                                "[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000173786'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",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes_upgrade_check/tasks/main.yml:16:3",
                                "",
                                "14",
                                "15 ---",
                                "16 - name: Retrieve the \"kubeadm-config\" ConfigMap",
                                "     ^ column 3",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on np0000173786'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 12 May 2026  17:27:03 +0000 (0:00:00.720)       0:00:39.551 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Tuesday 12 May 2026  17:27:03 +0000 (0:00:00.030)       0:00:39.581 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Tuesday 12 May 2026  17:27:03 +0000 (0:00:00.031)       0:00:39.612 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Tuesday 12 May 2026  17:27:03 +0000 (0:00:00.035)       0:00:39.647 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Tuesday 12 May 2026  17:27:03 +0000 (0:00:00.032)       0:00:39.680 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:27:03 +0000 (0:00:00.032)       0:00:39.712 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:27:04 +0000 (0:00:00.344)       0:00:40.057 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 12 May 2026  17:27:04 +0000 (0:00:00.044)       0:00:40.102 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:27:04 +0000 (0:00:00.779)       0:00:40.881 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:27:04 +0000 (0:00:00.033)       0:00:40.915 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:27:05 +0000 (0:00:00.311)       0:00:41.227 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 12 May 2026  17:27:05 +0000 (0:00:00.039)       0:00:41.266 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:27:06 +0000 (0:00:00.860)       0:00:42.127 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Tuesday 12 May 2026  17:27:06 +0000 (0:00:00.045)       0:00:42.172 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Tuesday 12 May 2026  17:27:06 +0000 (0:00:00.025)       0:00:42.198 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Tuesday 12 May 2026  17:27:06 +0000 (0:00:00.026)       0:00:42.224 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Tuesday 12 May 2026  17:27:06 +0000 (0:00:00.027)       0:00:42.252 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Tuesday 12 May 2026  17:27:07 +0000 (0:00:01.003)       0:00:43.255 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Tuesday 12 May 2026  17:27:07 +0000 (0:00:00.662)       0:00:43.918 ***********",
                                "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 12 May 2026  17:27:09 +0000 (0:00:01.496)       0:00:45.414 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Tuesday 12 May 2026  17:27:10 +0000 (0:00:00.809)       0:00:46.224 ***********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Tuesday 12 May 2026  17:27:10 +0000 (0:00:00.003)       0:00:46.227 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:27:10 +0000 (0:00:00.508)       0:00:46.735 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:27:11 +0000 (0:00:00.319)       0:00:47.055 ***********",
                                "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 12 May 2026  17:27:11 +0000 (0:00:00.060)       0:00:47.116 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:27:11 +0000 (0:00:00.804)       0:00:47.920 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:27:13 +0000 (0:00:01.677)       0:00:49.598 ***********",
                                "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 12 May 2026  17:27:13 +0000 (0:00:00.059)       0:00:49.658 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:27:14 +0000 (0:00:00.853)       0:00:50.511 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Tuesday 12 May 2026  17:27:16 +0000 (0:00:01.661)       0:00:52.173 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Tuesday 12 May 2026  17:27:16 +0000 (0:00:00.718)       0:00:52.891 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:27:17 +0000 (0:00:00.313)       0:00:53.205 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:27:17 +0000 (0:00:00.311)       0:00:53.516 ***********",
                                "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 12 May 2026  17:27:17 +0000 (0:00:00.057)       0:00:53.573 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:27:18 +0000 (0:00:01.051)       0:00:54.625 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Tuesday 12 May 2026  17:27:21 +0000 (0:00:02.936)       0:00:57.561 ***********",
                                "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 12 May 2026  17:27:21 +0000 (0:00:00.052)       0:00:57.614 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Tuesday 12 May 2026  17:27:22 +0000 (0:00:01.042)       0:00:58.656 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Tuesday 12 May 2026  17:27:23 +0000 (0:00:00.462)       0:00:59.119 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Tuesday 12 May 2026  17:27:23 +0000 (0:00:00.688)       0:00:59.808 ***********",
                                "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 12 May 2026  17:27:25 +0000 (0:00:01.422)       0:01:01.230 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:27:25 +0000 (0:00:00.321)       0:01:01.552 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 12 May 2026  17:27:25 +0000 (0:00:00.040)       0:01:01.592 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:27:26 +0000 (0:00:01.293)       0:01:02.885 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Tuesday 12 May 2026  17:27:26 +0000 (0:00:00.036)       0:01:02.922 ***********",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Tuesday 12 May 2026  17:27:26 +0000 (0:00:00.051)       0:01:02.974 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Tuesday 12 May 2026  17:27:27 +0000 (0:00:00.029)       0:01:03.003 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Tuesday 12 May 2026  17:27:30 +0000 (0:00:03.636)       0:01:06.640 ***********",
                                "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 12 May 2026  17:27:32 +0000 (0:00:02.177)       0:01:08.818 ***********",
                                "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 12 May 2026  17:27:33 +0000 (0:00:00.920)       0:01:09.738 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Tuesday 12 May 2026  17:27:34 +0000 (0:00:00.700)       0:01:10.438 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Tuesday 12 May 2026  17:27:35 +0000 (0:00:00.735)       0:01:11.174 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Tuesday 12 May 2026  17:27:35 +0000 (0:00:00.475)       0:01:11.650 ***********",
                                "[ERROR]: Task failed: Conditional result was '' of type 'str', which evaluates to False. Conditionals must have a boolean result.",
                                "",
                                "Task failed.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:86:7",
                                "",
                                "84       register: kubelet_swapon",
                                "85",
                                "86     - name: Disable swap",
                                "         ^ column 7",
                                "",
                                "<<< caused by >>>",
                                "",
                                "Conditional result was '' of type 'str', which evaluates to False. Conditionals must have a boolean result.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11",
                                "",
                                "89       ignore_errors: \"{{ ansible_check_mode }}\"",
                                "90       when:",
                                "91         - kubelet_swapon.stdout",
                                "             ^ column 11",
                                "",
                                "Broken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result was '' of type 'str', which evaluates to False. Conditionals must have a boolean result.\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********",
                                "Tuesday 12 May 2026  17:27:35 +0000 (0:00:00.033)       0:01:11.684 ***********",
                                "[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.",
                                "[DEPRECATION WARNING]: Passing `warnings` to `exit_json` or `fail_json` is deprecated. This feature will be removed from ansible-core version 2.23. Use `AnsibleModule.warn` instead.",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Tuesday 12 May 2026  17:27:36 +0000 (0:00:00.758)       0:01:12.442 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Tuesday 12 May 2026  17:27:37 +0000 (0:00:00.696)       0:01:13.138 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Tuesday 12 May 2026  17:27:37 +0000 (0:00:00.752)       0:01:13.891 ***********",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Tuesday 12 May 2026  17:27:37 +0000 (0:00:00.005)       0:01:13.896 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Tuesday 12 May 2026  17:27:38 +0000 (0:00:00.932)       0:01:14.828 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Tuesday 12 May 2026  17:27:39 +0000 (0:00:00.803)       0:01:15.632 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Tuesday 12 May 2026  17:27:40 +0000 (0:00:01.042)       0:01:16.674 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Tuesday 12 May 2026  17:27:42 +0000 (0:00:01.685)       0:01:18.360 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Tuesday 12 May 2026  17:27:42 +0000 (0:00:00.441)       0:01:18.802 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Tuesday 12 May 2026  17:27:43 +0000 (0:00:00.595)       0:01:19.397 ***********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Tuesday 12 May 2026  17:27:43 +0000 (0:00:00.075)       0:01:19.473 ***********",
                                "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 12 May 2026  17:27:43 +0000 (0:00:00.075)       0:01:19.549 ***********",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Tuesday 12 May 2026  17:27:43 +0000 (0:00:00.310)       0:01:19.859 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Tuesday 12 May 2026  17:27:43 +0000 (0:00:00.037)       0:01:19.896 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Tuesday 12 May 2026  17:27:43 +0000 (0:00:00.043)       0:01:19.940 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Tuesday 12 May 2026  17:27:43 +0000 (0:00:00.035)       0:01:19.976 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.742)       0:01:20.718 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.748 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.033)       0:01:20.782 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.031)       0:01:20.813 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.030)       0:01:20.843 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.873 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.903 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Tuesday 12 May 2026  17:27:44 +0000 (0:00:00.029)       0:01:20.933 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Tuesday 12 May 2026  17:28:15 +0000 (0:00:30.527)       0:01:51.460 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Tuesday 12 May 2026  17:28:15 +0000 (0:00:00.315)       0:01:51.775 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Tuesday 12 May 2026  17:28:15 +0000 (0:00:00.024)       0:01:51.800 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Tuesday 12 May 2026  17:28:16 +0000 (0:00:00.312)       0:01:52.112 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Tuesday 12 May 2026  17:28:16 +0000 (0:00:00.306)       0:01:52.419 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Tuesday 12 May 2026  17:28:16 +0000 (0:00:00.326)       0:01:52.746 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Tuesday 12 May 2026  17:28:16 +0000 (0:00:00.035)       0:01:52.782 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Tuesday 12 May 2026  17:28:16 +0000 (0:00:00.037)       0:01:52.819 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Tuesday 12 May 2026  17:28:16 +0000 (0:00:00.042)       0:01:52.862 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Tuesday 12 May 2026  17:28:24 +0000 (0:00:08.013)       0:02:00.876 ***********",
                                "[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 12 May 2026  17:28:25 +0000 (0:00:00.863)       0:02:01.739 ***********",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Tuesday 12 May 2026  17:28:25 +0000 (0:00:00.039)       0:02:01.778 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Tuesday 12 May 2026  17:28:25 +0000 (0:00:00.036)       0:02:01.815 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Tuesday 12 May 2026  17:28:25 +0000 (0:00:00.033)       0:02:01.849 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Tuesday 12 May 2026  17:28:25 +0000 (0:00:00.035)       0:02:01.885 ***********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Tuesday 12 May 2026  17:28:25 +0000 (0:00:00.028)       0:02:01.913 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Tuesday 12 May 2026  17:28:26 +0000 (0:00:00.588)       0:02:02.501 ***********",
                                "changed: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Tuesday 12 May 2026  17:28:27 +0000 (0:00:01.030)       0:02:03.532 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Tuesday 12 May 2026  17:28:28 +0000 (0:00:00.859)       0:02:04.391 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Tuesday 12 May 2026  17:28:28 +0000 (0:00:00.312)       0:02:04.704 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Tuesday 12 May 2026  17:28:29 +0000 (0:00:01.033)       0:02:05.737 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:28:30 +0000 (0:00:00.354)       0:02:06.091 ***********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Tuesday 12 May 2026  17:28:30 +0000 (0:00:00.038)       0:02:06.129 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:28:30 +0000 (0:00:00.669)       0:02:06.799 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Tuesday 12 May 2026  17:28:32 +0000 (0:00:01.745)       0:02:08.544 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Tuesday 12 May 2026  17:28:32 +0000 (0:00:00.436)       0:02:08.980 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Tuesday 12 May 2026  17:28:33 +0000 (0:00:00.367)       0:02:09.348 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Tuesday 12 May 2026  17:28:33 +0000 (0:00:00.373)       0:02:09.722 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Tuesday 12 May 2026  17:28:34 +0000 (0:00:00.313)       0:02:10.035 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Tuesday 12 May 2026  17:28:34 +0000 (0:00:00.307)       0:02:10.343 ***********",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Tuesday 12 May 2026  17:28:34 +0000 (0:00:00.051)       0:02:10.394 ***********",
                                "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 12 May 2026  17:28:34 +0000 (0:00:00.037)       0:02:10.431 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Tuesday 12 May 2026  17:28:35 +0000 (0:00:00.888)       0:02:11.320 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Tuesday 12 May 2026  17:28:37 +0000 (0:00:02.088)       0:02:13.409 ***********",
                                "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 12 May 2026  17:28:37 +0000 (0:00:00.040)       0:02:13.449 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Tuesday 12 May 2026  17:28:38 +0000 (0:00:00.755)       0:02:14.205 ***********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Tuesday 12 May 2026  17:28:39 +0000 (0:00:00.897)       0:02:15.103 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Tuesday 12 May 2026  17:28:41 +0000 (0:00:02.173)       0:02:17.277 ***********",
                                "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 12 May 2026  17:28:41 +0000 (0:00:00.032)       0:02:17.309 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.envoy_gateway : Deploy Helm chart] *******************",
                                "Tuesday 12 May 2026  17:28:41 +0000 (0:00:00.636)       0:02:17.946 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.envoy_gateway : Create GatewayClass] *****************",
                                "Tuesday 12 May 2026  17:29:11 +0000 (0:00:29.439)       0:02:47.386 ***********",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=118  changed=54   unreachable=0    failed=0    skipped=34   rescued=0    ignored=3",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 12 May 2026  17:29:12 +0000 (0:00:00.834)       0:02:48.220 ***********",
                                "===============================================================================",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 30.53s",
                                "vexxhost.kubernetes.envoy_gateway : Deploy Helm chart ------------------ 29.44s",
                                "vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 8.01s",
                                "Install Debian packages ------------------------------------------------- 7.26s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 7.23s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 3.64s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.18s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.94s",
                                "Gathering Facts --------------------------------------------------------- 2.90s",
                                "Gathering Facts --------------------------------------------------------- 2.33s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.18s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.17s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.09s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.89s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.75s",
                                "vexxhost.kubernetes.kubelet : Configure short hostname ------------------ 1.69s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.68s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.66s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.50s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.49s",
                                "INFO     [secretgen-controller > prepare] Executed: Successful",
                                "INFO     [secretgen-controller > converge] Executing",
                                "",
                                "PLAY [Deploy \"secretgen-controller\"] *******************************************",
                                "",
                                "TASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****",
                                "Tuesday 12 May 2026  17:29:13 +0000 (0:00:00.013)       0:00:00.013 ***********",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.",
                                "[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 12 May 2026  17:29:14 +0000 (0:00:01.427)       0:00:01.441 ***********",
                                "===============================================================================",
                                "atmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.43s",
                                "INFO     [secretgen-controller > converge] Executed: Successful",
                                "INFO     [secretgen-controller > idempotence] Executing",
                                "",
                                "PLAY [Deploy \"secretgen-controller\"] *******************************************",
                                "",
                                "TASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****",
                                "Tuesday 12 May 2026  17:29:15 +0000 (0:00:00.013)       0:00:00.013 ***********",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.",
                                "[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 12 May 2026  17:29:17 +0000 (0:00:01.492)       0:00:01.506 ***********",
                                "===============================================================================",
                                "atmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.49s",
                                "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 12 May 2026  17:29:18 +0000 (0:00:00.008)       0:00:00.008 ***********",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.19/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Wait for secretgen-controller deployment to be available] ****************",
                                "Tuesday 12 May 2026  17:29:19 +0000 (0:00:01.330)       0:00:01.339 ***********",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "ok: [controller]",
                                "",
                                "TASK [Create a test Password resource] *****************************************",
                                "Tuesday 12 May 2026  17:29:20 +0000 (0:00:00.964)       0:00:02.303 ***********",
                                "changed: [controller]",
                                "",
                                "TASK [Wait for test-password secret to be generated] ***************************",
                                "Tuesday 12 May 2026  17:29:21 +0000 (0:00:00.994)       0:00:03.298 ***********",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=4    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Tuesday 12 May 2026  17:29:22 +0000 (0:00:00.785)       0:00:04.083 ***********",
                                "===============================================================================",
                                "Gathering Facts --------------------------------------------------------- 1.33s",
                                "Create a test Password resource ----------------------------------------- 0.99s",
                                "Wait for secretgen-controller deployment to be available ---------------- 0.96s",
                                "Wait for test-password secret to be generated --------------------------- 0.79s",
                                "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-92e7-c8cd-000000000006-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:22.810921Z",
                            "start": "2026-05-12T17:25:57.852174Z"
                        },
                        "id": "0242ac17-0010-92e7-c8cd-000000000006",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-12T17:29:26.822586Z",
                    "start": "2026-05-12T17:29:23.591111Z"
                },
                "id": "0242ac17-0010-1b97-a316-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-1b97-a316-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:23.647606Z",
                            "start": "2026-05-12T17:29:23.602655Z"
                        },
                        "id": "0242ac17-0010-1b97-a316-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1b97-a316-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:23.696633Z",
                            "start": "2026-05-12T17:29:23.656513Z"
                        },
                        "id": "0242ac17-0010-1b97-a316-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/0c01494e295942688d283c8581db4086/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1b97-a316-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:24.498141Z",
                            "start": "2026-05-12T17:29:23.701796Z"
                        },
                        "id": "0242ac17-0010-1b97-a316-00000000000a",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": false,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.242:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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": "",
                                    "rc": 0,
                                    "stdout_lines": [],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1b97-a316-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:26.145402Z",
                            "start": "2026-05-12T17:29:24.507166Z"
                        },
                        "id": "0242ac17-0010-1b97-a316-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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/artifacts/* /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.007702",
                                    "end": "2026-05-12 17:29:26.532622",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/artifacts/* /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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-05-12 17:29:26.524920",
                                    "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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/docs/* /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.008243",
                                    "end": "2026-05-12 17:29:26.771842",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/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/0c01494e295942688d283c8581db4086/work/docs/* /var/lib/zuul/builds/0c01494e295942688d283c8581db4086/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-05-12 17:29:26.763599",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-1b97-a316-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:26.822586Z",
                            "start": "2026-05-12T17:29:26.162151Z"
                        },
                        "id": "0242ac17-0010-1b97-a316-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-05-12T17:29:27.319604Z",
                    "start": "2026-05-12T17:29:26.832378Z"
                },
                "id": "0242ac17-0010-1b97-a316-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCXDtmSpInhtsF2aO93wrINcGJ0ONJPZSwtXcvnvliPc/rbcWl/IG1cH6qAvC8u8g4dfnXSvUUrtAoXW+jFy5yb7+BiTxjH4bVZzWshH2oaj62VkpQAgljxbxNoAPumxw9ptCYZv7DHxNHQyfhY5GXALypHglJEz55LfGuismytT+vbQN83JqdxHJ6lj/zKlRaDkc9NZQ2lFKOvhthLuEYBDWfMTd9YDA293Sc2W9p9h3lJzp/HI7TDAAhB7RWaaXAu62DJLAwDz6CXFZRcQC+aoa+pgNQjpGWPk/t/SLJNk/kwuiFWyjFtPRbuV8mIy2jcVAOaMW+GydkGYoyL4PCppj98cBjLVyWVjYOIVUSDIUqq0OWibr/6ylCzbN4ZbLXG868PG9R4ORhnCn9Fx1gU+DNtsMV3qLpLFkMzb1J55XrMQSO2TKvUeC/IQp0d7ZxzW8jwhYi4m1sya2prMGt4j+NXex14li7WpjhsoHzoDontH2/BfOg9q4o6CfvUgLE= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCXDtmSpInhtsF2aO93wrINcGJ0ONJPZSwtXcvnvliPc/rbcWl/IG1cH6qAvC8u8g4dfnXSvUUrtAoXW+jFy5yb7+BiTxjH4bVZzWshH2oaj62VkpQAgljxbxNoAPumxw9ptCYZv7DHxNHQyfhY5GXALypHglJEz55LfGuismytT+vbQN83JqdxHJ6lj/zKlRaDkc9NZQ2lFKOvhthLuEYBDWfMTd9YDA293Sc2W9p9h3lJzp/HI7TDAAhB7RWaaXAu62DJLAwDz6CXFZRcQC+aoa+pgNQjpGWPk/t/SLJNk/kwuiFWyjFtPRbuV8mIy2jcVAOaMW+GydkGYoyL4PCppj98cBjLVyWVjYOIVUSDIUqq0OWibr/6ylCzbN4ZbLXG868PG9R4ORhnCn9Fx1gU+DNtsMV3qLpLFkMzb1J55XrMQSO2TKvUeC/IQp0d7ZxzW8jwhYi4m1sya2prMGt4j+NXex14li7WpjhsoHzoDontH2/BfOg9q4o6CfvUgLE= 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-1b97-a316-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/0c01494e295942688d283c8581db4086/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-12T17:29:27.319604Z",
                            "start": "2026-05-12T17:29:26.841392Z"
                        },
                        "id": "0242ac17-0010-1b97-a316-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
}
]
