[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/osism/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-02T11:52:51.541011Z",
                    "start": "2026-10-02T11:52:23.770514Z"
                },
                "id": "0242ac1f-6606-f203-7898-000000000002",
                "name": "Base pre"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:23.810616Z",
                            "start": "2026-10-02T11:52:23.790614Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000000f",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "3f4/osism/3f4f26fc63f248bbbf0fdd89615820fb"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-0000000000c1",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:23.866074Z",
                            "start": "2026-10-02T11:52:23.835867Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000c3",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.14\nJob: k8s-capi-images-unit-tests\nPipeline: check\nExecutor: 521e9411259a\nTriggered by: https://github.com/osism/k8s-capi-images/pull/370\nEvent ID: b05d6920-be57-11f1-9c93-7ef51b455faf\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:23.916319Z",
                            "start": "2026-10-02T11:52:23.876367Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000010",
                        "name": "Print job information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": false,
                                    "failed": false,
                                    "msg": "# Node Information\nInventory Hostname: debian-bookworm\nHostname: debian\nUsername: zuul\nDistro: Debian 12.15\nProvider: regiocloud-a\nRegion: \nLabel: debian-bookworm\nProduct Name: OpenStack Nova\nInterface IP: 2a13:1a81:8000:3124:f816:3eff:fe23:2983\n",
                                    "zj_item": "debian-bookworm"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:24.053300Z",
                            "start": "2026-10-02T11:52:23.922101Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000011",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000014",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:24.631824Z",
                            "start": "2026-10-02T11:52:24.063899Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000016",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "d53bd0765bd4effdd660c594936092d21de0ed99",
                            "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "d53bd0765bd4effdd660c594936092d21de0ed99",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/.ansible/tmp/ansible-tmp-1790941944.6732602-34-280688583962578/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "f8d78ee8d118c2a442043d651ce32b78",
                            "mode": "0644",
                            "owner": "root",
                            "size": 89356,
                            "src": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/.ansible/tmp/ansible-tmp-1790941944.6732602-34-280688583962578/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000014",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:25.732775Z",
                            "start": "2026-10-02T11:52:24.639167Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000017",
                        "name": "Copy ansible inventory to logs dir"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "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/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:26.038904Z",
                            "start": "2026-10-02T11:52:25.744910Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000001b",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:26.078139Z",
                            "start": "2026-10-02T11:52:26.045051Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000001c",
                        "name": "Create a new key in workspace based on build UUID"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-keygen",
                                "-t",
                                "rsa",
                                "-N",
                                "",
                                "-C",
                                "zuul-build-sshkey",
                                "-f",
                                "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:01.304023",
                            "end": "2026-10-02 11:52:27.881693",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_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": "0242ac1f-6606-f203-7898-0000000000e4-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-02 11:52:26.577670",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa.pub\nThe key fingerprint is:\nSHA256:OBtrfu4jH6Vb4CJgUqOXY73gtYDEn6w4YVk/OhA6+M4 zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|                 |\n|.                |\n| +o.             |\n|++*+o  .         |\n|O+X+oo+ S .      |\n|oXo*.o.* +       |\n|o.oo+ = + .      |\n| +  .+..o+       |\n|  E   .*=.       |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:OBtrfu4jH6Vb4CJgUqOXY73gtYDEn6w4YVk/OhA6+M4 zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|                 |",
                                "|.                |",
                                "| +o.             |",
                                "|++*+o  .         |",
                                "|O+X+oo+ S .      |",
                                "|oXo*.o.* +       |",
                                "|o.oo+ = + .      |",
                                "| +  .+..o+       |",
                                "|  E   .*=.       |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac1f-6606-f203-7898-0000000000e4-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:27.922422Z",
                            "start": "2026-10-02T11:52:26.101732Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000e4",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:27.957344Z",
                            "start": "2026-10-02T11:52:27.928661Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000e5",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:28.000692Z",
                            "start": "2026-10-02T11:52:27.976371Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000104",
                        "name": "Remove previously added zuul-build-sshkey"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDF/o8b3Kkmh5Gp2mgepc14wxF8LPaWkThwyCIn2ADrz+Hmq/QoxmncdUtpSkKLKq7I08JFQmc9XiH2Urh6M78KYxSLjF12ZFvrIhxy8+VuCDZBDenlo0bRNtju7/NaXXzyJntUgGaxlinIzCrnXHQQmxdKOkMFaoyNz79gugAPyoCab2K/wnUXeh+sLCZIb3af60ra8E1qNZn0yy62tV2FTpTpiTQAiyi9lOoPmnCUCUdBhm2mZYdxhBQ/9ekXQzCver8dL1jsfCJWqyblzrxl2Ly7UwRk/CKxekZojGv0fn+jXdZBpCtXRxUqRF46z2adXXfOqT+x8NnpF/P5xbtg82viWEcSp/0IFHQXcZEA/dmdcf8WHnOC/lpdiF54nYrDRfOqDVJLlItk2iqzs/kRI+Bo4R9AXiv25XPOkXBUFVwyAM/VK4YLvt7gi8nfASAfh11vdo4mDJ9p9sq+OgMgdT04jh6BZSiF123IkkYCPRhFquuWQ354QGN0HEOmPKM= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDF/o8b3Kkmh5Gp2mgepc14wxF8LPaWkThwyCIn2ADrz+Hmq/QoxmncdUtpSkKLKq7I08JFQmc9XiH2Urh6M78KYxSLjF12ZFvrIhxy8+VuCDZBDenlo0bRNtju7/NaXXzyJntUgGaxlinIzCrnXHQQmxdKOkMFaoyNz79gugAPyoCab2K/wnUXeh+sLCZIb3af60ra8E1qNZn0yy62tV2FTpTpiTQAiyi9lOoPmnCUCUdBhm2mZYdxhBQ/9ekXQzCver8dL1jsfCJWqyblzrxl2Ly7UwRk/CKxekZojGv0fn+jXdZBpCtXRxUqRF46z2adXXfOqT+x8NnpF/P5xbtg82viWEcSp/0IFHQXcZEA/dmdcf8WHnOC/lpdiF54nYrDRfOqDVJLlItk2iqzs/kRI+Bo4R9AXiv25XPOkXBUFVwyAM/VK4YLvt7gi8nfASAfh11vdo4mDJ9p9sq+OgMgdT04jh6BZSiF123IkkYCPRhFquuWQ354QGN0HEOmPKM= 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": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:28.728897Z",
                            "start": "2026-10-02T11:52:28.007076Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000105",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "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": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:28.995675Z",
                            "start": "2026-10-02T11:52:28.734253Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000106",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "1d1dbe1b93e9958e258958ac82ab5492fc9e0fb8",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "3f4f26fc63f248bbbf0fdd89615820fb_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "1d1dbe1b93e9958e258958ac82ab5492fc9e0fb8",
                                    "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-1790941949.054232-139-63851792645211/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "fb6569add12c53ce029f2fac509c5280",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1790941949.054232-139-63851792645211/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:29.668774Z",
                            "start": "2026-10-02T11:52:29.002745Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000107",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "1444069d21d1f1738497194127e6e9b8d15cac38",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "3f4f26fc63f248bbbf0fdd89615820fb_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "1444069d21d1f1738497194127e6e9b8d15cac38",
                                    "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-1790941949.7350707-149-128114901960355/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "622ee5084771b9ffdf33353934aecb3d",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1790941949.7350707-149-128114901960355/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:30.301618Z",
                            "start": "2026-10-02T11:52:29.674383Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000108",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:30.335151Z",
                            "start": "2026-10-02T11:52:30.307656Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000e6",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/var/ssh/nodepool"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-0000000000eb",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:30.827665Z",
                            "start": "2026-10-02T11:52:30.344798Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000ed",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa"
                            ],
                            "delta": "0:00:00.023322",
                            "end": "2026-10-02 11:52:31.198260",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_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": "0242ac1f-6606-f203-7898-0000000000f3-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-02 11:52:31.174938",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/3f4f26fc63f248bbbf0fdd89615820fb_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-f203-7898-0000000000f3-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:31.227634Z",
                            "start": "2026-10-02T11:52:30.841329Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000f3",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:31.660882Z",
                            "start": "2026-10-02T11:52:31.239897Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000f4",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:31.694271Z",
                            "start": "2026-10-02T11:52:31.669782Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-0000000000f5",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000001e",
                        "name": "start-zuul-console",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/start-zuul-console"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:32.180842Z",
                            "start": "2026-10-02T11:52:31.706332Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000020",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_info_dir": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:32.255847Z",
                            "start": "2026-10-02T11:52:32.197737Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000024",
                        "name": "Define zuul_info_dir fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 493,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:32.544175Z",
                            "start": "2026-10-02T11:52:32.264324Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000025",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "setup",
                            "ansible_facts": {
                                "ansible_all_ipv4_addresses": [
                                    "10.128.0.106"
                                ],
                                "ansible_all_ipv6_addresses": [
                                    "2a13:1a81:8000:3124:f816:3eff:fe23:2983",
                                    "fe80::f816:3eff:fe23:2983"
                                ],
                                "ansible_apparmor": {
                                    "status": "enabled"
                                },
                                "ansible_architecture": "x86_64",
                                "ansible_bios_date": "04/01/2014",
                                "ansible_bios_vendor": "SeaBIOS",
                                "ansible_bios_version": "1.15.0-1",
                                "ansible_board_asset_tag": "NA",
                                "ansible_board_name": "NA",
                                "ansible_board_serial": "NA",
                                "ansible_board_vendor": "NA",
                                "ansible_board_version": "NA",
                                "ansible_chassis_asset_tag": "NA",
                                "ansible_chassis_serial": "NA",
                                "ansible_chassis_vendor": "QEMU",
                                "ansible_chassis_version": "pc-i440fx-6.2",
                                "ansible_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-6.1.0-53-amd64",
                                    "console": "ttyS0,115200",
                                    "gfxpayload": "text",
                                    "no_timer_check": true,
                                    "nofb": true,
                                    "nomodeset": true,
                                    "ro": true,
                                    "root": "LABEL=cloudimg-rootfs"
                                },
                                "ansible_date_time": {
                                    "date": "2026-10-02",
                                    "day": "02",
                                    "epoch": "1790941953",
                                    "epoch_int": "1790941953",
                                    "hour": "11",
                                    "iso8601": "2026-10-02T11:52:33Z",
                                    "iso8601_basic": "20261002T115233360400",
                                    "iso8601_basic_short": "20261002T115233",
                                    "iso8601_micro": "2026-10-02T11:52:33.360400Z",
                                    "minute": "52",
                                    "month": "10",
                                    "second": "33",
                                    "time": "11:52:33",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Friday",
                                    "weekday_number": "5",
                                    "weeknumber": "39",
                                    "year": "2026"
                                },
                                "ansible_default_ipv4": {
                                    "address": "10.128.0.106",
                                    "alias": "ens3",
                                    "broadcast": "10.128.0.111",
                                    "gateway": "10.128.0.97",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:23:29:83",
                                    "mtu": 1500,
                                    "netmask": "255.255.255.240",
                                    "network": "10.128.0.96",
                                    "prefix": "28",
                                    "type": "ether"
                                },
                                "ansible_default_ipv6": {
                                    "address": "2a13:1a81:8000:3124:f816:3eff:fe23:2983",
                                    "gateway": "fe80::f816:3eff:fe92:ad10",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:23:29:83",
                                    "mtu": 1500,
                                    "prefix": "64",
                                    "scope": "global",
                                    "type": "ether"
                                },
                                "ansible_device_links": {
                                    "ids": {},
                                    "labels": {
                                        "vda1": [
                                            "cloudimg-rootfs"
                                        ]
                                    },
                                    "masters": {},
                                    "uuids": {
                                        "vda1": [
                                            "7e928512-02f8-403c-9e3c-beb8467a36c3"
                                        ]
                                    }
                                },
                                "ansible_devices": {
                                    "loop0": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop1": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop2": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop3": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop4": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop5": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop6": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "loop7": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {},
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "0",
                                        "sectorsize": "512",
                                        "size": "0.00 Bytes",
                                        "support_discard": "0",
                                        "vendor": null,
                                        "virtual": 1
                                    },
                                    "vda": {
                                        "holders": [],
                                        "host": "",
                                        "links": {
                                            "ids": [],
                                            "labels": [],
                                            "masters": [],
                                            "uuids": []
                                        },
                                        "model": null,
                                        "partitions": {
                                            "vda1": {
                                                "holders": [],
                                                "links": {
                                                    "ids": [],
                                                    "labels": [
                                                        "cloudimg-rootfs"
                                                    ],
                                                    "masters": [],
                                                    "uuids": [
                                                        "7e928512-02f8-403c-9e3c-beb8467a36c3"
                                                    ]
                                                },
                                                "sectors": "20969439",
                                                "sectorsize": 512,
                                                "size": "10.00 GB",
                                                "start": "2048",
                                                "uuid": "7e928512-02f8-403c-9e3c-beb8467a36c3"
                                            }
                                        },
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "20971520",
                                        "sectorsize": "512",
                                        "size": "10.00 GB",
                                        "support_discard": "512",
                                        "vendor": "0x1af4",
                                        "virtual": 1
                                    }
                                },
                                "ansible_distribution": "Debian",
                                "ansible_distribution_file_parsed": true,
                                "ansible_distribution_file_path": "/etc/os-release",
                                "ansible_distribution_file_variety": "Debian",
                                "ansible_distribution_major_version": "12",
                                "ansible_distribution_minor_version": "15",
                                "ansible_distribution_release": "bookworm",
                                "ansible_distribution_version": "12.15",
                                "ansible_dns": {
                                    "domain": "a.customers.regiocloud.tech.",
                                    "nameservers": [
                                        "81.163.194.9",
                                        "81.163.194.10"
                                    ],
                                    "search": [
                                        "a.customers.regiocloud.tech."
                                    ]
                                },
                                "ansible_domain": "",
                                "ansible_effective_group_id": 1000,
                                "ansible_effective_user_id": 1000,
                                "ansible_ens3": {
                                    "active": true,
                                    "device": "ens3",
                                    "ipv4": {
                                        "address": "10.128.0.106",
                                        "broadcast": "10.128.0.111",
                                        "netmask": "255.255.255.240",
                                        "network": "10.128.0.96",
                                        "prefix": "28"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "2a13:1a81:8000:3124:f816:3eff:fe23:2983",
                                            "prefix": "64",
                                            "scope": "global"
                                        },
                                        {
                                            "address": "fe80::f816:3eff:fe23:2983",
                                            "prefix": "64",
                                            "scope": "link"
                                        }
                                    ],
                                    "macaddress": "fa:16:3e:23:29:83",
                                    "module": "virtio_net",
                                    "mtu": 1500,
                                    "pciid": "virtio1",
                                    "promisc": false,
                                    "speed": -1,
                                    "type": "ether"
                                },
                                "ansible_env": {
                                    "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus",
                                    "HOME": "/home/zuul",
                                    "LANG": "C.UTF-8",
                                    "LC_ALL": "C.UTF-8",
                                    "LOGNAME": "zuul",
                                    "MOTD_SHOWN": "pam",
                                    "PATH": "/usr/local/bin:/usr/bin:/bin:/usr/games",
                                    "PWD": "/home/zuul",
                                    "SHELL": "/bin/bash",
                                    "SHLVL": "0",
                                    "SSH_CLIENT": "2a13:1a81:8000:2::38d 34318 22",
                                    "SSH_CONNECTION": "2a13:1a81:8000:2::38d 34318 2a13:1a81:8000:3124:f816:3eff:fe23:2983 22",
                                    "USER": "zuul",
                                    "XDG_RUNTIME_DIR": "/run/user/1000",
                                    "XDG_SESSION_CLASS": "user",
                                    "XDG_SESSION_ID": "1",
                                    "XDG_SESSION_TYPE": "tty",
                                    "_": "/bin/sh"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "Other",
                                "ansible_fqdn": "debian",
                                "ansible_hostname": "debian",
                                "ansible_hostnqn": "",
                                "ansible_interfaces": [
                                    "lo",
                                    "ens3"
                                ],
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "6.1.0-53-amd64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Debian 6.1.187-1 (2026-09-07)",
                                "ansible_lo": {
                                    "active": true,
                                    "device": "lo",
                                    "ipv4": {
                                        "address": "127.0.0.1",
                                        "broadcast": "",
                                        "netmask": "255.0.0.0",
                                        "network": "127.0.0.0",
                                        "prefix": "8"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "::1",
                                            "prefix": "128",
                                            "scope": "host"
                                        }
                                    ],
                                    "mtu": 65536,
                                    "promisc": false,
                                    "type": "loopback"
                                },
                                "ansible_loadavg": {
                                    "15m": 0.0,
                                    "1m": 0.0,
                                    "5m": 0.0
                                },
                                "ansible_local": {},
                                "ansible_locally_reachable_ips": {
                                    "ipv4": [
                                        "10.128.0.106",
                                        "127.0.0.0/8",
                                        "127.0.0.1"
                                    ],
                                    "ipv6": [
                                        "::1",
                                        "2a13:1a81:8000:3124:f816:3eff:fe23:2983",
                                        "fe80::f816:3eff:fe23:2983"
                                    ]
                                },
                                "ansible_lsb": {
                                    "codename": "bookworm",
                                    "description": "Debian GNU/Linux 12 (bookworm)",
                                    "id": "Debian",
                                    "major_release": "12",
                                    "release": "12"
                                },
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_machine_id": "c0012608c18f40ed85c3ebb0c4095d72",
                                "ansible_memfree_mb": 3670,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 3758,
                                        "used": 155
                                    },
                                    "real": {
                                        "free": 3670,
                                        "total": 3913,
                                        "used": 243
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 3913,
                                "ansible_mounts": [
                                    {
                                        "block_available": 1943687,
                                        "block_size": 4096,
                                        "block_total": 2443371,
                                        "block_used": 499684,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 2497370,
                                        "inode_total": 2533680,
                                        "inode_used": 36310,
                                        "mount": "/",
                                        "options": "rw,relatime",
                                        "size_available": 7961341952,
                                        "size_total": 10008047616,
                                        "uuid": "7e928512-02f8-403c-9e3c-beb8467a36c3"
                                    }
                                ],
                                "ansible_nodename": "debian",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-6.1.0-53-amd64",
                                    "console": [
                                        "tty0",
                                        "ttyS0,115200"
                                    ],
                                    "gfxpayload": "text",
                                    "no_timer_check": true,
                                    "nofb": true,
                                    "nomodeset": true,
                                    "ro": true,
                                    "root": "LABEL=cloudimg-rootfs"
                                },
                                "ansible_processor": [
                                    "0",
                                    "GenuineIntel",
                                    "Intel Xeon Processor (Icelake)",
                                    "1",
                                    "GenuineIntel",
                                    "Intel Xeon Processor (Icelake)"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 2,
                                "ansible_processor_nproc": 2,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 2,
                                "ansible_product_name": "OpenStack Nova",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "29.2.1",
                                "ansible_python": {
                                    "executable": "/usr/bin/python3",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 2,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        2,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.2",
                                "ansible_real_group_id": 1000,
                                "ansible_real_user_id": 1000,
                                "ansible_selinux": {
                                    "status": "disabled"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "systemd",
                                "ansible_ssh_host_key_dsa_public": "AAAAB3NzaC1kc3MAAACBAOw60nB0USihRerO/lOyJhR/ULhdzMNFFne5amaLBaLfHJSIjsceJmWGoDskIcQ5N6mMwmIJwVEMMdsX5vQhHywDIFteRsmRPJcEkXPH3rp31Lg1U6ee3rBl9dwVFrrTLChTz7mF42cFDL5Nr4of+AFTZ3feIYjeB4aRZfbjkvW9AAAAFQDUyT2V3f2kkdRjjTAEwlKWyZzVewAAAIB13RHXcC0/kod3Wx6HvxhLzd6axfMZ6xgMh+feGO8uW3EyUkSgZYltL5hzQV9GOxSxpTTE3MXypY/PjoeQhUiHfjKWPEgFGFNWETkm9l9oaMTsV9AmpLVm70nQCI2UsMe61Y6rsp8U0JtpoDy5oGJY3Xgqqun3Bm5cgVBOSuhk1gAAAIEAzjJ+f4WSdAE1qwrs8A50hLiaplVvpKZPu4SyIIsKb4prZ3qGpNqGtFBUrV5HJeS2bR78ADo8hfutDcMzq5gZ//5zbvN/ckpIcSftB6ntky03gOmjvrolTU0I2jeiwGgS4jrzxGdlyvPLhPggghQYB2Jp/mfYFRoLIzIZqsiwPvw=",
                                "ansible_ssh_host_key_dsa_public_keytype": "ssh-dss",
                                "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBN5ENPtqZUBTFBSOSU98kUh0oj1Yq7CUtuMZnmtZJB2yObSAQtD6b5mdsZop19tmIVEKgrbWpcYf6/N4wehyjF8=",
                                "ansible_ssh_host_key_ecdsa_public_keytype": "ecdsa-sha2-nistp256",
                                "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIBKgy3AQWAPsuizzT4nBKFAmNc3XVtvUK0eUl1apNbaN",
                                "ansible_ssh_host_key_ed25519_public_keytype": "ssh-ed25519",
                                "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQDkS31nNTIUkqyj9uvewoEbUkoG0yv8eXPY2sMHNx2xYh5NIYeLwcm6LiyDvLyeWpStQg/+KYAvqnw/HpyiNu6RZf0LFFOlnPmyrson5y+phynBlc5GJUH79/0JG34XtjubK3DnPPJ6p/v+TGWOQt+7zUJZ8WFJv454+djwJ1ZBEcsV3R+JAHwqS8lbOABKMfo1Bf2IAMzNQyFSOLLQxBIjuOkP4sANHqZppnduOF7enBSk2SGSWsT6MDJpD1Pd3t4CtEMTeChKoVsHvMtEdqCe+2nfb3PjG+jrOsovfbc7Ltynmwr5sg3HIuUHnmLYEdBPQFN6ghGEoAictc0p7L2mS9/NwP2ab0e86yGeR6eIbUYrM4EkatpPGDVGOcwvKLfy0onMzAFC/rF2P0968VkVFLKjbi8NwUBQCY7R/4M9QOBk0zZKTkwxFJpMf26tutaIGsp7x5HDfZ2IkkLOFeI0uusTT8deh/iM2ergquYjptE+WD/8AF/o3gDXbpjQkFU=",
                                "ansible_ssh_host_key_rsa_public_keytype": "ssh-rsa",
                                "ansible_swapfree_mb": 0,
                                "ansible_swaptotal_mb": 0,
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": [
                                    ""
                                ],
                                "ansible_system_capabilities_enforced": "True",
                                "ansible_system_vendor": "OpenStack Foundation",
                                "ansible_uptime_seconds": 2113,
                                "ansible_user_dir": "/home/zuul",
                                "ansible_user_gecos": "",
                                "ansible_user_gid": 1000,
                                "ansible_user_id": "zuul",
                                "ansible_user_shell": "/bin/bash",
                                "ansible_user_uid": 1000,
                                "ansible_userspace_architecture": "x86_64",
                                "ansible_userspace_bits": "64",
                                "ansible_virtualization_role": "guest",
                                "ansible_virtualization_tech_guest": [
                                    "openstack"
                                ],
                                "ansible_virtualization_tech_host": [
                                    "kvm"
                                ],
                                "ansible_virtualization_type": "openstack",
                                "gather_subset": [
                                    "all"
                                ],
                                "module_setup": true
                            },
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "fact_path": "/etc/ansible/facts.d",
                                    "filter": [],
                                    "gather_subset": [
                                        "all"
                                    ],
                                    "gather_timeout": 10
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:33.713927Z",
                            "start": "2026-10-02T11:52:32.556186Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000026",
                        "name": "Collect information about the host"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "validate_host_hostname_sanitized": "debian-bookworm"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:33.872054Z",
                            "start": "2026-10-02T11:52:33.722894Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000027",
                        "name": "Sanitize hostname"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "8922dd30ed1eb4e60ef0bdf8fb698b27789b0c88",
                            "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info/host-info.debian-bookworm.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "host-info.j2",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "8922dd30ed1eb4e60ef0bdf8fb698b27789b0c88",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info/host-info.debian-bookworm.yaml",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/.ansible/tmp/ansible-tmp-1790941953.9027634-246-108799788693773/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "03ebba4e97b775241f12a1b997657ceb",
                            "mode": "0644",
                            "owner": "root",
                            "size": 13269,
                            "src": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/.ansible/tmp/ansible-tmp-1790941953.9027634-246-108799788693773/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:34.569636Z",
                            "start": "2026-10-02T11:52:33.877439Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000028",
                        "name": "Write out all ansible variables/facts known for each host"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "_zuul_nolog_return": true,
                            "action": "zuul_debug_info",
                            "changed": false,
                            "df_i": "Filesystem      Inodes IUsed   IFree IUse% Mounted on\nudev            495371   343  495028    1% /dev\ntmpfs           500890   458  500432    1% /run\n/dev/vda1      2533680 36310 2497370    2% /\ntmpfs           500890     1  500889    1% /dev/shm\ntmpfs           500890     3  500887    1% /run/lock\ntmpfs           100178    20  100158    1% /run/user/1000\n",
                            "df_m": "Filesystem     1M-blocks  Used Available Use% Mounted on\nudev                1936     0      1936   0% /dev\ntmpfs                392     1       391   1% /run\n/dev/vda1           9545  1506      7593  17% /\ntmpfs               1957     0      1957   0% /dev/shm\ntmpfs                  5     0         5   0% /run/lock\ntmpfs                392     0       392   0% /run/user/1000\n",
                            "image_manifest_files": [],
                            "invocation": {
                                "module_args": {
                                    "image_manifest": null,
                                    "image_manifest_files": [
                                        "/etc/dib-builddate.txt",
                                        "/etc/image-hostname.txt"
                                    ],
                                    "ipv4_route_required": false,
                                    "ipv6_route_required": false,
                                    "traceroute_host": null
                                }
                            },
                            "network_interfaces": "1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n       valid_lft forever preferred_lft forever\n    inet6 ::1/128 scope host noprefixroute \n       valid_lft forever preferred_lft forever\n2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000\n    link/ether fa:16:3e:23:29:83 brd ff:ff:ff:ff:ff:ff\n    altname enp0s3\n    inet 10.128.0.106/28 brd 10.128.0.111 scope global dynamic ens3\n       valid_lft 41090sec preferred_lft 41090sec\n    inet6 2a13:1a81:8000:3124:f816:3eff:fe23:2983/64 scope global dynamic mngtmpaddr \n       valid_lft forever preferred_lft forever\n    inet6 fe80::f816:3eff:fe23:2983/64 scope link \n       valid_lft forever preferred_lft forever\n",
                            "network_neighbors": "10.128.0.97 dev ens3 lladdr fa:16:3e:90:1b:03 REACHABLE \nfe80::f816:3eff:fe92:ad10 dev ens3 lladdr fa:16:3e:92:ad:10 router REACHABLE \n",
                            "network_routing_v4": "default via 10.128.0.97 dev ens3 \n10.128.0.96/28 dev ens3 proto kernel scope link src 10.128.0.106 \n169.254.169.254 via 10.128.0.98 dev ens3 \n",
                            "network_routing_v6": "2a13:1a81:8000:3124::/64 dev ens3 proto kernel metric 256 pref medium\nfe80::/64 dev ens3 proto kernel metric 256 pref medium\ndefault via fe80::f816:3eff:fe92:ad10 dev ens3 proto ra metric 1024 expires 65462sec hoplimit 255 pref medium\n",
                            "proc_cpuinfo": "processor\t: 0\nvendor_id\t: GenuineIntel\ncpu family\t: 6\nmodel\t\t: 134\nmodel name\t: Intel Xeon Processor (Icelake)\nstepping\t: 0\nmicrocode\t: 0x1\ncpu MHz\t\t: 2299.998\ncache size\t: 16384 KB\nphysical id\t: 0\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 0\ninitial apicid\t: 0\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc pebs bts rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq dtes64 vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd arat avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq la57 rdpid fsrm md_clear arch_capabilities\nvmx flags\t: vnmi preemption_timer posted_intr invvpid ept_x_only ept_ad ept_1gb flexpriority apicv tsc_offset vtpr mtf vapic ept vpid unrestricted_guest vapic_reg vid shadow_vmcs\nbugs\t\t: spectre_v1 spectre_v2 spec_store_bypass swapgs taa mmio_stale_data rfds bhi ibpb_no_ret its\nbogomips\t: 4599.99\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 57 bits virtual\npower management:\n\nprocessor\t: 1\nvendor_id\t: GenuineIntel\ncpu family\t: 6\nmodel\t\t: 134\nmodel name\t: Intel Xeon Processor (Icelake)\nstepping\t: 0\nmicrocode\t: 0x1\ncpu MHz\t\t: 2299.998\ncache size\t: 16384 KB\nphysical id\t: 1\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 1\ninitial apicid\t: 1\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc pebs bts rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq dtes64 vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd arat avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq la57 rdpid fsrm md_clear arch_capabilities\nvmx flags\t: vnmi preemption_timer posted_intr invvpid ept_x_only ept_ad ept_1gb flexpriority apicv tsc_offset vtpr mtf vapic ept vpid unrestricted_guest vapic_reg vid shadow_vmcs\nbugs\t\t: spectre_v1 spectre_v2 spec_store_bypass swapgs taa mmio_stale_data rfds bhi ibpb_no_ret its\nbogomips\t: 4599.99\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 57 bits virtual\npower management:\n\n",
                            "traceroute": null,
                            "uname": "Linux debian 6.1.0-53-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.187-1 (2026-09-07) x86_64 GNU/Linux\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:35.021783Z",
                            "start": "2026-10-02T11:52:34.575771Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000002a",
                        "name": "Collect information about zuul worker"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "ddd526f43bf068500268aaca9792bf15b18289ab",
                            "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info/zuul-info.debian-bookworm.txt",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "zuul-info.j2",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "ddd526f43bf068500268aaca9792bf15b18289ab",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/zuul-info/zuul-info.debian-bookworm.txt",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/.ansible/tmp/ansible-tmp-1790941955.0583572-285-281337827084124/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "279d08fb2269b3d174f3c0b397120366",
                            "mode": "0644",
                            "owner": "root",
                            "size": 2524,
                            "src": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/.ansible/tmp/ansible-tmp-1790941955.0583572-285-281337827084124/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:35.577899Z",
                            "start": "2026-10-02T11:52:35.027370Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000002b",
                        "name": "Write out all zuul information for each host"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000002d",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:35.864779Z",
                            "start": "2026-10-02T11:52:35.588767Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000002f",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --compress --delete-after --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --out-format='<<CHANGED>>%i %n%L' /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/src '[zuul@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:.'",
                            "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": false,
                                    "delete": true,
                                    "dest": "[zuul@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:.",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": false,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "push",
                                    "owner": false,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": true,
                                    "rsync_opts": [],
                                    "rsync_path": null,
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/src",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ src/\ncd+++++++++ src/github.com/\ncd+++++++++ src/github.com/osism/\ncd+++++++++ src/github.com/osism/k8s-capi-images/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.flake8\n<f+++++++++ src/github.com/osism/k8s-capi-images/.yamllint.yml\n<f+++++++++ src/github.com/osism/k8s-capi-images/.zuul.yaml\n<f+++++++++ src/github.com/osism/k8s-capi-images/README.md\n<f+++++++++ src/github.com/osism/k8s-capi-images/build-local.sh\n<f+++++++++ src/github.com/osism/k8s-capi-images/requirements.txt\ncd+++++++++ src/github.com/osism/k8s-capi-images/.claude/\ncd+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/\ncd+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/SKILL.md\ncd+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/scripts/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/scripts/compare.py\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/COMMIT_EDITMSG\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/FETCH_HEAD\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/HEAD\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/ORIG_HEAD\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/config\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/config.worktree\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/description\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/index\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/packed-refs\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/branches/\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/applypatch-msg.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/commit-msg.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/fsmonitor-watchman.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/post-update.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-applypatch.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-commit.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-merge-commit.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-push.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-rebase.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-receive.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/prepare-commit-msg.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/push-to-checkout.sample\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/update.sample\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/info/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/info/exclude\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/logs/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/logs/HEAD\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/41f5fdab2d0314f4eb5e7412fe9f389863e68c\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/681336a0ca27992be7fe3f5d40a66f5ecfe23c\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/ac3b4fe93c0c1df528c09c94c2e2d299ff03b1\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/05/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/05/b0f4de9dcada6ae2e16cc5bf18cc23518d0ab5\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/07/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/07/d991cadc519720e81a6d18afd1c68e086fa679\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0a/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0a/6bff66c8084a6660f4afed2670ce1327bed365\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0b/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0b/710e7abb738c20f16f24a2a9cb00a3167bd7ce\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0e/8d0894663ca97db244572033d6f154a5ec870e\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0e/ec6905f460ba7945e862b06cb987e04a794286\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0f/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0f/09bbf6956cfaea0014e39eb5370f591e103618\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/11/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/11/c5f607eec117e8762378e4e1e337e011a89b75\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/13/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/13/1a16a98378d6b39f6d0849b9956673fbeadf9d\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/16/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/16/10507268a10e9343ffc82102f4c2facc23e7f1\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/17/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/17/1f815f6572d0665e58cfdaf6122f8f6eb1e4b0\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/18/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/18/30290c5cdf41af3e107ee9a6e16bab64f91b85\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/19/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/19/316b73003f22c53f2cb6d997eee15fcc1a39f2\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/19/e56f10212e04beac11e9de8897270a9303c6d1\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1a/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1a/e9cf1c05b92416600596b264796afb6656372a\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1c/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1c/870cbc14263adf5c8648f0eae80f1eafd68e09\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1d/291dedb4cffe42dcf9a7c8960b4836871c6d9f\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1e/73dc145a788652d4a3982f50d68b1505c9fc7f\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/23/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/23/524f4be195e93e9b583b134f7a6160f551e1c2\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/25/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/25/92a1a43d5e0a4a8694ae30f0272065a9ca302a\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/29/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/29/bf2eb715032c8c729c9a0c8875c41f3caafc79\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/075c6acc9bd3ebdf6b3814ea523a5c56b81580\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/30be492111b12855320b716505faef93dc3ff6\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/b144c586a07387d4996c22addd7c9ebb346f1f\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/6161c15e0218dd94bc77abde8a022db5b98505\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/f14cb868f6254f28953b2f106e97a310ae8d73\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/f5af81dbec34ec4ea17f4050fdbb64e5c2be05\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/35/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/35/80c57c477b8f87ca73703139d2ce3e4ac4c6cc\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/39/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/39/dc68686150e6fa0e3ec2d74023a3db5e68d25c\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3b/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3b/e776ee38c300a15c82893bf32dfefc8c388f05\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3c/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3c/c18e8c1a815012bf93eada10758feb56a7e1aa\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3d/3b7ede617c186aabee645933b6dda5ff878f7f\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3d/9002f203d968c232e021556e330cd0da971584\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3e/265f09019325e902a2359ab8a4b37cfee2be19\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3e/3837343a370c076f4d7b94b2fbf81bcd1f43c9\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/41/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/41/4af47263c426f0984dcd37d315d69170f018fa\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/41/de6a093923a78feb4c1398258a3e832608328c\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/42/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/42/a3c3297c79ed4396052cc63cb5f1e9bc4e8041\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4c/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4c/c6e749fb2199dd96ee172c3a3210af3054442e\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4d/22a9606f43b26b087d8260a7eb32367d2e52c8\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4d/323417d1f2d29d9a7786411fcb073a049b0044\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/50/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/50/997ea4bf2636e10a0af085f4d9f595938605db\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/51/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/51/e290dad882be09a3e3a11d3e6cef823fae3536\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/52/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/52/667eee603683c0ef2dfa6cccaac6384ce28ec9\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/52/894f125965d3670601923e317a5f5f27c7c333\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/53/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/53/d7f6777e37cb8785aa7c07fd1bd8fa44c176d9\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/54/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/54/03f3d2c91aaecf3934fc020bb54fddc6d3f423\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/57/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/57/92173c95ea204f1ce6f3010e4faae4b8d4764c\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/58/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/58/60d19298aa5cbe5c424b5992a1016599713973\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5c/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5c/a7d67819bb6b22e78094fd4287f4a0623bc4d0\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5c/c0de1d4f3d0d8f33662036da51438b261722b9\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5d/d4834c27d711e36a2840d11e8befb889d522e0\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5e/afa1499963c94725d61827791ef740023ad461\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/60/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/60/7a7b1f72fc106d8687860cd9f34e75f58615aa\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/63/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/63/52d9b9f8e79b6bdd84a53f647418175771282b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/64/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/64/25fb18a5f50ba707714a966e0e49688c879f3e\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/65/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/65/c3fb960297d838bc49f44634453f2c1abcf505\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/65/c530e51b3b411319a09e91e63868c77c016855\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/66/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/66/1ba1020555aac88c72e3a6c47e176f4f99cc1f\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/67/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/67/5506de871a0992c49813605e80c1492ce4431b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6a/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6a/00db13728b26cc4518f6361493fd956eeeb751\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6a/3c5b382fc489fdd10792e4372afa01a0a8b2f2\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6c/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6c/8e52f24d926574d49ef1d5518953e3da9639f6\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6d/78348ee005088a84554bf392c662f4c30e3763\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6e/ccec6a4e218fdb1d171fa259bfd2eab97e3fa9\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6e/e6d42cd7974968a4b4cfa6ec219d22ab7271b1\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6f/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6f/0d94d0fb16f98466548554176a7144ca047fc6\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/70/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/70/cc761cc517a85ff5f9284b901510bbd2ae70bf\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/74/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/74/99d38e89998cba38aef0968393f70047655e85\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/78/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/78/d1b0395487e27a66a55a19df3171a3227086eb\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/79/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/79/a6103341841256d9f65f9a22f4ef713d4aa456\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/7e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/7e/efc27f5cd22cdb53922cfc4f2063169c11f3b8\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/81/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/81/8b0309bcb6537278a734c1b4c7b0bb26a18a2e\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/81/a12c9a32568a85f159c66c3842ffd1d5b52bb0\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/82/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/82/88c64a92b5e21082f732822737907a0ec653e6\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/85/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/85/c5fe3b78c71944f4f3f70dc52bec6c3d4d4f87\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/85/fd2cef4cc7cc4a96d0a596f27a4c5b4469000b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/87/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/87/0b995a3c3f2a1b62c3f7cb78fb9fb693528a38\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/88/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/88/2bcb5beb3510d2e232daffd41b7524a39d0619\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/89/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/89/2e4071831958972ee5cf69e29badf21497266a\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/90/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/90/cd706ed3bd83a4cee508fe10081cd6a8c63d93\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/91/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/91/cdf626dfb2b6c914bca5f95addf65f44c54294\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/93/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/93/9591de5e93228fc72f0bc8f62eca881344b42b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/94/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/94/55d694c6b900873843c2c8a26df552d95676d0\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/99/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/99/5293238db81c8f100e12db3a128138315e7483\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9b/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9b/31de7914c3ab6376fa5aa0c965f435aea45a8e\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9c/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9c/0151dbb0838017f53ca218765e0e782dc40faa\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9d/0a9a3da431d7b404bb1d1aed4ceed8ec79dd1e\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/a326d5c77056051dff6495f4cf9936db08e8dc\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/b94df6dc8043b2031f6fc72354cf47f8d43844\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/d2b2a1931f438b90b5705057ebf043393240a4\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a0/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a0/15764d35b57d824bf0ffc3c8a6cc11dd75bb14\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a0/60768a38fa3c5b13bee04cff3badf887344c5d\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a3/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a3/566fb21147d76fe6185fbf57677fc39ef4076d\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a7/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a7/e8981e2186f419868e5232e78eb856445d7e7b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a8/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a8/299138d46fc75fd9c4d8c273b4e5aed2656129\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ab/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ab/44f4f583bd1c09be59516afefd77793ea4e66b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ac/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ac/30f095c0e1996802efcc68fab18ba4a8904010\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ac/b581b3b6412e4eacee89a96841cb6daf7bdb2a\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ae/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ae/cf2ddaf390dbc99e78b10a34a7ebd06500ea14\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b0/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b0/eaf2bc1841eb278853120048f8c5906101b8a6\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b7/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b7/89fad447920efeab12ec2e2459e63a563e41dc\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b8/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b8/00dbe08bbcb60ecc01e521a3372dea68f895c6\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b8/786e0729afd3a488636994ef15c19afbbabf40\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ba/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ba/8000491d144acb821e3c9193ff08c62f889d74\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/bc/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/bc/40ba10c3c719eea9dbcda1eef0f5af686aa0e8\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/be/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/be/9aded6b88bc9ea2fd450306f5c53d6337b60ec\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/be/c976eff72e121ba7c8b44a1f6c7d837af98c47\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c3/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c3/dcaaabe97c1f8304e68bbb876b72767440bbb6\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c4/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c4/0fb648362f56464abed0a4c71477ccf4bc5bbd\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c6/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c6/360a40eaf2dff44485428aa17a3514dd53454e\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c7/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c7/ce8c6c59aed89d0e42b05bc10e747186260bc0\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c8/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c8/5c5d019ac6a9b66463b8dad8ca4d674c1df4e7\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c9/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c9/412a61adecd69fdcefc7a3afddcad464caf7d0\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cb/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cb/7e37b7eb5f77766cc75e80204e372b22049f74\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cd/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cd/d018a9b27301e960ced0294ad0e4027b513ddb\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d3/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d3/31e46c3cdc2f3ea5c61a12f3483be5639768f5\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d5/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d5/22b12135828b28803bba1e7693ecf490f43b60\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d7/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d7/9fba6f216f9f1ae5199c6246e794ba86685b09\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d8/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d8/3c28d38ebdb5d5973796e24e6deb6681cf0819\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/db/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/db/f4d05b397169e67f56d13325512a624167cd94\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/de/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/de/b9488c0f3b3ebbaec74d0b5a5aaf50a46fdcc2\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/df/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/df/23be2dfd13522d3a4ffbe9df0d2d1ad964b943\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e3/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e3/31a838b4dac67b35ea5c255a819d572be90fd7\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e4/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e4/a809c971f5da43aab11cbc0d6b4a1cbd3c3d91\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e5/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e5/d347a554c82c3f65dd17c5c5b642963dd466af\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e7/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e7/f87d78948d011ae10844923eb22616ceb583ef\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e7/fe2d41fb2cd8d8e10bc11000a171479607ad8b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e9/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e9/af2b74990ff2542e6463013a586909268f4ed6\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e9/b2872aee60e01faf83bc50feb9bd70b3b3c630\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ec/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ec/03c134595d17d88fd75fff8ea2d1635f181444\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ee/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ee/3a4efbdb5fa16d14f9228b8cafc8f97fad91e8\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ef/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ef/1cde7f6695af87bf9fbc2fb118d3b9eced442b\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f2/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f2/98232041a24f5b6f238e5fed0732abde5a9765\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f5/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f5/76d3238621a615696247211f08077c96a36d19\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f6/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f6/89a50b225a81ccb9639c3f59c479b4d706e71c\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f8/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f8/276d83603c61406fe0f2604ab15db43fe1d612\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f8/3560c45faae0a1d2b1e09d094adf8d8716aa89\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fa/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fa/5127d7b6555890e772cb5111df36953a46de4a\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fb/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fb/fda6d4a6ce2e8966749ce228fe442a2806c70a\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fb/ff9a9866ea071d641367ee8a2d51e1ec702f58\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ff/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ff/160a1e195d61a71a49f30520df818fb1d74940\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/info/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/info/commit-graph\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/info/packs\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-584f7f1e1a5b15b0d19bab6ff2aee241941e7e0e.idx\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-584f7f1e1a5b15b0d19bab6ff2aee241941e7e0e.pack\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-a115ca5441b06de61828691b98ff0283cd2b4b02.idx\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-a115ca5441b06de61828691b98ff0283cd2b4b02.pack\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-d62bb2850c5847e2cd70d1d5b1bc0b26d5e456cf.idx\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-d62bb2850c5847e2cd70d1d5b1bc0b26d5e456cf.pack\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-e349cb17ab6187129d9d2d2efc413c9ff34710a5.idx\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-e349cb17ab6187129d9d2d2efc413c9ff34710a5.pack\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/heads/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/heads/main\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/remotes/\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/remotes/origin/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/remotes/origin/main\ncd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/zuul/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451\n<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/zuul/fetch\ncd+++++++++ src/github.com/osism/k8s-capi-images/.github/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.github/renovate.json\ncd+++++++++ src/github.com/osism/k8s-capi-images/.github/workflows/\n<f+++++++++ src/github.com/osism/k8s-capi-images/.github/workflows/add-to-project.yml\n<f+++++++++ src/github.com/osism/k8s-capi-images/.github/workflows/sync-with-upstream.yml\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/README.rst\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/element-deps\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/package-installs.yaml\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/environment.d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/environment.d/10-k8s-capi.bash\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/extra-data.d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/extra-data.d/10-fetch-image-builder\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/40-update-apt-for-bootloader\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/99-k8s-capi-cleanup\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/999-ensure-machine-id\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/10-restore-cloud-init-datasources\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/50-install-ansible\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/60-run-image-builder\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/kubeadm.yml.j2\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/wrapper.yml\ncd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/fstrim\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/journalctl\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/modprobe\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/sysctl\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/systemctl\n<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/udevadm\ncd+++++++++ src/github.com/osism/k8s-capi-images/overrides/\n<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.33.json\n<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.34.json\n<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.35.json\n<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.36.json\n<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.37.json\ncd+++++++++ src/github.com/osism/k8s-capi-images/playbooks/\n<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/build.yml\n<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/pre.yml\n<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/sbom.yml\n<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/unit-tests.yml\n<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/validate.yml\ncd+++++++++ src/github.com/osism/k8s-capi-images/scripts/\n<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/build-sbom.py\n<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/generate-k8s-image-urls.sh\n<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/render-goss-vars.py\n<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/run-update-extra-vars.sh\n<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/update-extra-vars.py\ncd+++++++++ src/github.com/osism/k8s-capi-images/tests/\n<f+++++++++ src/github.com/osism/k8s-capi-images/tests/test_build_sbom.py\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ src/",
                                "cd+++++++++ src/github.com/",
                                "cd+++++++++ src/github.com/osism/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.flake8",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.yamllint.yml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.zuul.yaml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/README.md",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/build-local.sh",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/requirements.txt",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.claude/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/SKILL.md",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/scripts/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.claude/skills/image-builder-sync/scripts/compare.py",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/COMMIT_EDITMSG",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/FETCH_HEAD",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/HEAD",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/ORIG_HEAD",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/config",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/config.worktree",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/description",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/index",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/packed-refs",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/branches/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/applypatch-msg.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/fsmonitor-watchman.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/post-update.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-applypatch.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-commit.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-merge-commit.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-push.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-rebase.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/pre-receive.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/prepare-commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/push-to-checkout.sample",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/hooks/update.sample",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/info/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/info/exclude",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/logs/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/logs/HEAD",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/41f5fdab2d0314f4eb5e7412fe9f389863e68c",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/681336a0ca27992be7fe3f5d40a66f5ecfe23c",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/04/ac3b4fe93c0c1df528c09c94c2e2d299ff03b1",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/05/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/05/b0f4de9dcada6ae2e16cc5bf18cc23518d0ab5",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/07/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/07/d991cadc519720e81a6d18afd1c68e086fa679",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0a/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0a/6bff66c8084a6660f4afed2670ce1327bed365",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0b/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0b/710e7abb738c20f16f24a2a9cb00a3167bd7ce",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0e/8d0894663ca97db244572033d6f154a5ec870e",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0e/ec6905f460ba7945e862b06cb987e04a794286",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0f/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/0f/09bbf6956cfaea0014e39eb5370f591e103618",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/11/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/11/c5f607eec117e8762378e4e1e337e011a89b75",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/13/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/13/1a16a98378d6b39f6d0849b9956673fbeadf9d",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/16/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/16/10507268a10e9343ffc82102f4c2facc23e7f1",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/17/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/17/1f815f6572d0665e58cfdaf6122f8f6eb1e4b0",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/18/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/18/30290c5cdf41af3e107ee9a6e16bab64f91b85",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/19/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/19/316b73003f22c53f2cb6d997eee15fcc1a39f2",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/19/e56f10212e04beac11e9de8897270a9303c6d1",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1a/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1a/e9cf1c05b92416600596b264796afb6656372a",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1c/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1c/870cbc14263adf5c8648f0eae80f1eafd68e09",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1d/291dedb4cffe42dcf9a7c8960b4836871c6d9f",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/1e/73dc145a788652d4a3982f50d68b1505c9fc7f",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/23/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/23/524f4be195e93e9b583b134f7a6160f551e1c2",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/25/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/25/92a1a43d5e0a4a8694ae30f0272065a9ca302a",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/29/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/29/bf2eb715032c8c729c9a0c8875c41f3caafc79",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/075c6acc9bd3ebdf6b3814ea523a5c56b81580",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/30be492111b12855320b716505faef93dc3ff6",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2a/b144c586a07387d4996c22addd7c9ebb346f1f",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/6161c15e0218dd94bc77abde8a022db5b98505",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/f14cb868f6254f28953b2f106e97a310ae8d73",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/2d/f5af81dbec34ec4ea17f4050fdbb64e5c2be05",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/35/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/35/80c57c477b8f87ca73703139d2ce3e4ac4c6cc",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/39/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/39/dc68686150e6fa0e3ec2d74023a3db5e68d25c",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3b/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3b/e776ee38c300a15c82893bf32dfefc8c388f05",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3c/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3c/c18e8c1a815012bf93eada10758feb56a7e1aa",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3d/3b7ede617c186aabee645933b6dda5ff878f7f",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3d/9002f203d968c232e021556e330cd0da971584",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3e/265f09019325e902a2359ab8a4b37cfee2be19",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/3e/3837343a370c076f4d7b94b2fbf81bcd1f43c9",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/41/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/41/4af47263c426f0984dcd37d315d69170f018fa",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/41/de6a093923a78feb4c1398258a3e832608328c",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/42/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/42/a3c3297c79ed4396052cc63cb5f1e9bc4e8041",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4c/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4c/c6e749fb2199dd96ee172c3a3210af3054442e",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4d/22a9606f43b26b087d8260a7eb32367d2e52c8",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/4d/323417d1f2d29d9a7786411fcb073a049b0044",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/50/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/50/997ea4bf2636e10a0af085f4d9f595938605db",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/51/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/51/e290dad882be09a3e3a11d3e6cef823fae3536",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/52/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/52/667eee603683c0ef2dfa6cccaac6384ce28ec9",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/52/894f125965d3670601923e317a5f5f27c7c333",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/53/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/53/d7f6777e37cb8785aa7c07fd1bd8fa44c176d9",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/54/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/54/03f3d2c91aaecf3934fc020bb54fddc6d3f423",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/57/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/57/92173c95ea204f1ce6f3010e4faae4b8d4764c",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/58/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/58/60d19298aa5cbe5c424b5992a1016599713973",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5c/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5c/a7d67819bb6b22e78094fd4287f4a0623bc4d0",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5c/c0de1d4f3d0d8f33662036da51438b261722b9",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5d/d4834c27d711e36a2840d11e8befb889d522e0",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/5e/afa1499963c94725d61827791ef740023ad461",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/60/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/60/7a7b1f72fc106d8687860cd9f34e75f58615aa",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/63/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/63/52d9b9f8e79b6bdd84a53f647418175771282b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/64/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/64/25fb18a5f50ba707714a966e0e49688c879f3e",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/65/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/65/c3fb960297d838bc49f44634453f2c1abcf505",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/65/c530e51b3b411319a09e91e63868c77c016855",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/66/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/66/1ba1020555aac88c72e3a6c47e176f4f99cc1f",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/67/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/67/5506de871a0992c49813605e80c1492ce4431b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6a/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6a/00db13728b26cc4518f6361493fd956eeeb751",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6a/3c5b382fc489fdd10792e4372afa01a0a8b2f2",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6c/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6c/8e52f24d926574d49ef1d5518953e3da9639f6",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6d/78348ee005088a84554bf392c662f4c30e3763",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6e/ccec6a4e218fdb1d171fa259bfd2eab97e3fa9",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6e/e6d42cd7974968a4b4cfa6ec219d22ab7271b1",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6f/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/6f/0d94d0fb16f98466548554176a7144ca047fc6",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/70/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/70/cc761cc517a85ff5f9284b901510bbd2ae70bf",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/74/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/74/99d38e89998cba38aef0968393f70047655e85",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/78/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/78/d1b0395487e27a66a55a19df3171a3227086eb",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/79/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/79/a6103341841256d9f65f9a22f4ef713d4aa456",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/7e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/7e/efc27f5cd22cdb53922cfc4f2063169c11f3b8",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/81/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/81/8b0309bcb6537278a734c1b4c7b0bb26a18a2e",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/81/a12c9a32568a85f159c66c3842ffd1d5b52bb0",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/82/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/82/88c64a92b5e21082f732822737907a0ec653e6",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/85/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/85/c5fe3b78c71944f4f3f70dc52bec6c3d4d4f87",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/85/fd2cef4cc7cc4a96d0a596f27a4c5b4469000b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/87/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/87/0b995a3c3f2a1b62c3f7cb78fb9fb693528a38",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/88/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/88/2bcb5beb3510d2e232daffd41b7524a39d0619",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/89/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/89/2e4071831958972ee5cf69e29badf21497266a",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/90/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/90/cd706ed3bd83a4cee508fe10081cd6a8c63d93",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/91/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/91/cdf626dfb2b6c914bca5f95addf65f44c54294",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/93/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/93/9591de5e93228fc72f0bc8f62eca881344b42b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/94/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/94/55d694c6b900873843c2c8a26df552d95676d0",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/99/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/99/5293238db81c8f100e12db3a128138315e7483",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9b/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9b/31de7914c3ab6376fa5aa0c965f435aea45a8e",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9c/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9c/0151dbb0838017f53ca218765e0e782dc40faa",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9d/0a9a3da431d7b404bb1d1aed4ceed8ec79dd1e",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/a326d5c77056051dff6495f4cf9936db08e8dc",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/b94df6dc8043b2031f6fc72354cf47f8d43844",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/9e/d2b2a1931f438b90b5705057ebf043393240a4",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a0/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a0/15764d35b57d824bf0ffc3c8a6cc11dd75bb14",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a0/60768a38fa3c5b13bee04cff3badf887344c5d",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a3/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a3/566fb21147d76fe6185fbf57677fc39ef4076d",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a7/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a7/e8981e2186f419868e5232e78eb856445d7e7b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a8/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/a8/299138d46fc75fd9c4d8c273b4e5aed2656129",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ab/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ab/44f4f583bd1c09be59516afefd77793ea4e66b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ac/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ac/30f095c0e1996802efcc68fab18ba4a8904010",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ac/b581b3b6412e4eacee89a96841cb6daf7bdb2a",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ae/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ae/cf2ddaf390dbc99e78b10a34a7ebd06500ea14",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b0/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b0/eaf2bc1841eb278853120048f8c5906101b8a6",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b7/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b7/89fad447920efeab12ec2e2459e63a563e41dc",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b8/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b8/00dbe08bbcb60ecc01e521a3372dea68f895c6",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/b8/786e0729afd3a488636994ef15c19afbbabf40",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ba/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ba/8000491d144acb821e3c9193ff08c62f889d74",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/bc/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/bc/40ba10c3c719eea9dbcda1eef0f5af686aa0e8",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/be/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/be/9aded6b88bc9ea2fd450306f5c53d6337b60ec",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/be/c976eff72e121ba7c8b44a1f6c7d837af98c47",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c3/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c3/dcaaabe97c1f8304e68bbb876b72767440bbb6",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c4/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c4/0fb648362f56464abed0a4c71477ccf4bc5bbd",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c6/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c6/360a40eaf2dff44485428aa17a3514dd53454e",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c7/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c7/ce8c6c59aed89d0e42b05bc10e747186260bc0",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c8/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c8/5c5d019ac6a9b66463b8dad8ca4d674c1df4e7",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c9/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/c9/412a61adecd69fdcefc7a3afddcad464caf7d0",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cb/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cb/7e37b7eb5f77766cc75e80204e372b22049f74",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cd/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/cd/d018a9b27301e960ced0294ad0e4027b513ddb",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d3/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d3/31e46c3cdc2f3ea5c61a12f3483be5639768f5",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d5/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d5/22b12135828b28803bba1e7693ecf490f43b60",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d7/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d7/9fba6f216f9f1ae5199c6246e794ba86685b09",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d8/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/d8/3c28d38ebdb5d5973796e24e6deb6681cf0819",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/db/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/db/f4d05b397169e67f56d13325512a624167cd94",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/de/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/de/b9488c0f3b3ebbaec74d0b5a5aaf50a46fdcc2",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/df/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/df/23be2dfd13522d3a4ffbe9df0d2d1ad964b943",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e3/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e3/31a838b4dac67b35ea5c255a819d572be90fd7",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e4/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e4/a809c971f5da43aab11cbc0d6b4a1cbd3c3d91",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e5/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e5/d347a554c82c3f65dd17c5c5b642963dd466af",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e7/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e7/f87d78948d011ae10844923eb22616ceb583ef",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e7/fe2d41fb2cd8d8e10bc11000a171479607ad8b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e9/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e9/af2b74990ff2542e6463013a586909268f4ed6",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/e9/b2872aee60e01faf83bc50feb9bd70b3b3c630",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ec/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ec/03c134595d17d88fd75fff8ea2d1635f181444",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ee/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ee/3a4efbdb5fa16d14f9228b8cafc8f97fad91e8",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ef/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ef/1cde7f6695af87bf9fbc2fb118d3b9eced442b",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f2/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f2/98232041a24f5b6f238e5fed0732abde5a9765",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f5/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f5/76d3238621a615696247211f08077c96a36d19",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f6/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f6/89a50b225a81ccb9639c3f59c479b4d706e71c",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f8/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f8/276d83603c61406fe0f2604ab15db43fe1d612",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/f8/3560c45faae0a1d2b1e09d094adf8d8716aa89",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fa/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fa/5127d7b6555890e772cb5111df36953a46de4a",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fb/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fb/fda6d4a6ce2e8966749ce228fe442a2806c70a",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/fb/ff9a9866ea071d641367ee8a2d51e1ec702f58",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ff/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/ff/160a1e195d61a71a49f30520df818fb1d74940",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/info/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/info/commit-graph",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/info/packs",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-584f7f1e1a5b15b0d19bab6ff2aee241941e7e0e.idx",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-584f7f1e1a5b15b0d19bab6ff2aee241941e7e0e.pack",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-a115ca5441b06de61828691b98ff0283cd2b4b02.idx",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-a115ca5441b06de61828691b98ff0283cd2b4b02.pack",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-d62bb2850c5847e2cd70d1d5b1bc0b26d5e456cf.idx",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-d62bb2850c5847e2cd70d1d5b1bc0b26d5e456cf.pack",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-e349cb17ab6187129d9d2d2efc413c9ff34710a5.idx",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/objects/pack/pack-e349cb17ab6187129d9d2d2efc413c9ff34710a5.pack",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/heads/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/heads/main",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/remotes/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/remotes/origin/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/remotes/origin/main",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/zuul/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.git/refs/zuul/fetch",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.github/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.github/renovate.json",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/.github/workflows/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.github/workflows/add-to-project.yml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/.github/workflows/sync-with-upstream.yml",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/README.rst",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/element-deps",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/package-installs.yaml",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/environment.d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/environment.d/10-k8s-capi.bash",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/extra-data.d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/extra-data.d/10-fetch-image-builder",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/40-update-apt-for-bootloader",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/99-k8s-capi-cleanup",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/finalise.d/999-ensure-machine-id",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/10-restore-cloud-init-datasources",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/50-install-ansible",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/install.d/60-run-image-builder",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/kubeadm.yml.j2",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/wrapper.yml",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/fstrim",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/journalctl",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/modprobe",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/sysctl",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/systemctl",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/elements/k8s-capi/static/shims/udevadm",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/overrides/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.33.json",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.34.json",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.35.json",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.36.json",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/overrides/v1.37.json",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/playbooks/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/build.yml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/pre.yml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/sbom.yml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/unit-tests.yml",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/playbooks/validate.yml",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/scripts/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/build-sbom.py",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/generate-k8s-image-urls.sh",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/render-goss-vars.py",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/run-update-extra-vars.sh",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/scripts/update-extra-vars.py",
                                "cd+++++++++ src/github.com/osism/k8s-capi-images/tests/",
                                "<f+++++++++ src/github.com/osism/k8s-capi-images/tests/test_build_sbom.py"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000002d",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:36.754952Z",
                            "start": "2026-10-02T11:52:35.871190Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000030",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": "0755",
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": "0755",
                                            "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": {
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": "0755",
                                            "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": "0242ac1f-6606-f203-7898-000000000032",
                        "name": "ensure-output-dirs-present",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/ensure-output-dirs-present"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:37.536697Z",
                            "start": "2026-10-02T11:52:36.775818Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000034",
                        "name": "Ensure Zuul output directories exist"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/zuul-output/logs"
                                },
                                "before": {
                                    "path": "/home/zuul/zuul-output/logs"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/zuul-output/logs",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "zuul",
                            "path": "/home/zuul/zuul-output/logs",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:37.811127Z",
                            "start": "2026-10-02T11:52:37.545051Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000039",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "cmd": "set +e\nout=/home/zuul/zuul-output/logs/sudo-strace.log\n: > \"$out\"\nif command -v strace >/dev/null 2>&1; then\n  cmd=(timeout 40 strace -f -tt -T -y       -o \"$out\"       sudo -n true)\nelse\n  echo \"strace not installed; running bare sudo probe\" > \"$out\"\n  cmd=(timeout 40 sudo -n true)\nfi\n{ TIMEFORMAT='WALL: %3R s'; time \"${cmd[@]}\"; } 2> \"$out.time\"\necho \"EXIT: $?\" >> \"$out.time\"\n",
                            "delta": "0:00:00.073126",
                            "end": "2026-10-02 11:52:38.162596",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nout=/home/zuul/zuul-output/logs/sudo-strace.log\n: > \"$out\"\nif command -v strace >/dev/null 2>&1; then\n  cmd=(timeout 40 strace -f -tt -T -y       -o \"$out\"       sudo -n true)\nelse\n  echo \"strace not installed; running bare sudo probe\" > \"$out\"\n  cmd=(timeout 40 sudo -n true)\nfi\n{ TIMEFORMAT='WALL: %3R s'; time \"${cmd[@]}\"; } 2> \"$out.time\"\necho \"EXIT: $?\" >> \"$out.time\"\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-f203-7898-00000000003a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-02 11:52:38.089470",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-f203-7898-00000000003a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:38.348068Z",
                            "start": "2026-10-02T11:52:37.837277Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000003a",
                        "name": "Probe first sudo invocation under strace"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "cmd": "set +e\nout=/home/zuul/zuul-output/logs/sudo-debug.txt\n{\n  echo \"== date ==\";            date -Iseconds\n  echo \"== uptime ==\";          uptime\n  echo \"== boot age (s) ==\";    awk '{print int($1)}' /proc/uptime\n  echo \"== /etc/hostname ==\"; cat /etc/hostname\n  echo \"== /etc/hosts ==\";      cat /etc/hosts\n  echo \"== nsswitch.conf ==\";   cat /etc/nsswitch.conf\n  echo \"== resolv.conf ==\";     cat /etc/resolv.conf 2>/dev/null\n  echo \"== ping 8.8.8.8 ==\"\n  ping -c1 -W2 8.8.8.8 2>&1 || true\n  echo \"== ping 81.163.194.9 ==\"\n  ping -c1 -W2 81.163.194.9 2>&1 || true\n  echo \"== ping 81.163.194.10 ==\"\n  ping -c1 -W2 81.163.194.10 2>&1 || true\n  echo \"== getent ahosts ==\"\n  getent ahosts \"$(cat /etc/hostname)\"\n  echo \"== timed getent hosts ==\"\n  { TIMEFORMAT='getent: %3R s'; time getent hosts \"$(cat /etc/hostname)\"; } 2>&1\n  echo \"== systemd-logind active ==\"\n  systemctl is-active systemd-logind\n  echo \"== systemd-logind ActiveEnterTimestampMonotonic ==\"\n  systemctl show systemd-logind -p ActiveEnterTimestampMonotonic\n  echo \"== systemd-resolved active ==\"\n  systemctl is-active systemd-resolved 2>/dev/null\n  echo \"== /etc/pam.d/sudo ==\"\n  cat /etc/pam.d/sudo 2>/dev/null\n  echo \"== sudoers.d listing ==\"\n  ls -la /etc/sudoers.d/ 2>/dev/null\n} > \"$out\" 2>&1\n",
                            "delta": "0:00:00.131297",
                            "end": "2026-10-02 11:52:38.792336",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nout=/home/zuul/zuul-output/logs/sudo-debug.txt\n{\n  echo \"== date ==\";            date -Iseconds\n  echo \"== uptime ==\";          uptime\n  echo \"== boot age (s) ==\";    awk '{print int($1)}' /proc/uptime\n  echo \"== /etc/hostname ==\"; cat /etc/hostname\n  echo \"== /etc/hosts ==\";      cat /etc/hosts\n  echo \"== nsswitch.conf ==\";   cat /etc/nsswitch.conf\n  echo \"== resolv.conf ==\";     cat /etc/resolv.conf 2>/dev/null\n  echo \"== ping 8.8.8.8 ==\"\n  ping -c1 -W2 8.8.8.8 2>&1 || true\n  echo \"== ping 81.163.194.9 ==\"\n  ping -c1 -W2 81.163.194.9 2>&1 || true\n  echo \"== ping 81.163.194.10 ==\"\n  ping -c1 -W2 81.163.194.10 2>&1 || true\n  echo \"== getent ahosts ==\"\n  getent ahosts \"$(cat /etc/hostname)\"\n  echo \"== timed getent hosts ==\"\n  { TIMEFORMAT='getent: %3R s'; time getent hosts \"$(cat /etc/hostname)\"; } 2>&1\n  echo \"== systemd-logind active ==\"\n  systemctl is-active systemd-logind\n  echo \"== systemd-logind ActiveEnterTimestampMonotonic ==\"\n  systemctl show systemd-logind -p ActiveEnterTimestampMonotonic\n  echo \"== systemd-resolved active ==\"\n  systemctl is-active systemd-resolved 2>/dev/null\n  echo \"== /etc/pam.d/sudo ==\"\n  cat /etc/pam.d/sudo 2>/dev/null\n  echo \"== sudoers.d listing ==\"\n  ls -la /etc/sudoers.d/ 2>/dev/null\n} > \"$out\" 2>&1\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-f203-7898-00000000003b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-02 11:52:38.661039",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-f203-7898-00000000003b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:38.886890Z",
                            "start": "2026-10-02T11:52:38.377615Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000003b",
                        "name": "Snapshot DNS / PAM / logind state (no become)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/zuul-output/logs"
                                },
                                "before": {
                                    "path": "/home/zuul/zuul-output/logs"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/zuul-output/logs",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "zuul",
                            "path": "/home/zuul/zuul-output/logs",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:39.176859Z",
                            "start": "2026-10-02T11:52:38.903946Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-00000000003f",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j182036063171.1037",
                            "changed": false,
                            "cmd": "set +e\nset -o pipefail\nphase=pre\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\ntargets=\"tarballs.opendev.org galaxy.ansible.com\"\niface=$(ip -6 route show default 2>/dev/null        | awk '{for(i=1;i<=NF;i++) if($i==\"dev\"){print $(i+1); exit}}')\n: \"${iface:=eth0}\"\ngw=$(ip -6 route show default 2>/dev/null     | awk '{for(i=1;i<=NF;i++) if($i==\"via\"){print $(i+1); exit}}')\n{\n  echo \"== date ==\";    date -Is\n  echo \"== iface / gw ==\"; echo \"iface=$iface gw=$gw\"\n  echo \"== ip -6 addr (lifetimes = SLAAC evidence) ==\"; ip -6 addr show\n  echo \"== ip -6 route show ==\"; ip -6 route show\n  echo \"== ip -6 route show default (expires/proto ra = RA evidence) ==\"\n  ip -6 route show default\n  echo \"== ip -4 route show default ==\"; ip -4 route show default\n  echo \"== accept_ra / forwarding (procfs; RA-suppression evidence) ==\"\n  for k in all default \"$iface\"; do\n    for s in forwarding accept_ra; do\n      v=$(cat \"/proc/sys/net/ipv6/conf/$k/$s\" 2>/dev/null)\n      echo \"net.ipv6.conf.$k.$s = ${v:-<unavailable>}\"\n    done\n  done\n  echo \"== resolvectl status ==\"\n  if command -v resolvectl >/dev/null 2>&1; then resolvectl status 2>&1\n  else echo \"resolvectl not installed\"; fi\n  echo \"== /etc/resolv.conf (resolver stub) ==\"\n  cat /etc/resolv.conf 2>/dev/null || echo \"(absent)\"\n  echo \"== /run/systemd/resolve/resolv.conf (upstreams) ==\"\n  cat /run/systemd/resolve/resolv.conf 2>/dev/null    || echo \"(no systemd-resolved upstream file)\"\n  for d in $targets; do\n    echo \"== target: $d ==\"\n    echo \"-- getent ahosts (families glibc returns) --\"\n    getent ahosts \"$d\" 2>&1\n    if command -v resolvectl >/dev/null 2>&1; then\n      echo \"-- resolvectl query --\"; resolvectl query --cache=no \"$d\" 2>&1\n    fi\n    v6=$(getent ahosts \"$d\" 2>/dev/null | awk '$1~/:/{print $1; exit}')\n    v4=$(getent ahosts \"$d\" 2>/dev/null         | awk '$1~/^[0-9]+(\\.[0-9]+){3}$/{print $1; exit}')\n    if [ -n \"$v6\" ]; then\n      echo \"-- ip -6 route get $v6 --\"; ip -6 route get \"$v6\" 2>&1\n    fi\n    if [ -n \"$v4\" ]; then\n      echo \"-- ip -4 route get $v4 --\"; ip -4 route get \"$v4\" 2>&1\n    fi\n    # Several attempts per family: a single sample misclassifies a\n    # ~50%-loss path as healthy or dead by coin flip, defeating the\n    # pre/post bracket. Bounded and in-line -- not a background sampler.\n    for fam in 6 4; do\n      echo \"-- curl -$fam (3 attempts) --\"\n      ok=0\n      for n in 1 2 3; do\n        curl -$fam -sS -m 10 -o /dev/null          -w \"  #$n http=%{http_code} ip=%{remote_ip} t=%{time_total}s\\n\"          \"https://$d/\" 2>&1 && ok=1 || echo \"  #$n curl -$fam FAILED\"\n      done\n      # Trace only the family that failed, to its resolved address:\n      # localises WHERE the failing path dies instead of tracing the\n      # healthy family. v4 via traceroute, v6 via traceroute6.\n      if [ \"$ok\" = 0 ]; then\n        addr=$v6; [ \"$fam\" = 4 ] && addr=$v4\n        tr=traceroute6; [ \"$fam\" = 4 ] && tr=traceroute\n        if [ -n \"$addr\" ] && command -v \"$tr\" >/dev/null 2>&1; then\n          echo \"  !! curl -$fam failed 3x; $tr to $addr\"\n          timeout 30 \"$tr\" -q1 -w2 \"$addr\" 2>&1\n        fi\n      fi\n    done\n  done\n  echo \"== ping -6 gateway ==\"\n  if [ -n \"$gw\" ]; then\n    ping -6 -c1 -W2 \"${gw}%${iface}\" 2>&1\n  else echo \"no v6 gw\"; fi\n} > \"$out\" 2>&1\n",
                            "delta": "0:00:06.083386",
                            "end": "2026-10-02 11:52:46.100172",
                            "failed_when_result": false,
                            "finished": 1,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nset -o pipefail\nphase=pre\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\ntargets=\"tarballs.opendev.org galaxy.ansible.com\"\niface=$(ip -6 route show default 2>/dev/null        | awk '{for(i=1;i<=NF;i++) if($i==\"dev\"){print $(i+1); exit}}')\n: \"${iface:=eth0}\"\ngw=$(ip -6 route show default 2>/dev/null     | awk '{for(i=1;i<=NF;i++) if($i==\"via\"){print $(i+1); exit}}')\n{\n  echo \"== date ==\";    date -Is\n  echo \"== iface / gw ==\"; echo \"iface=$iface gw=$gw\"\n  echo \"== ip -6 addr (lifetimes = SLAAC evidence) ==\"; ip -6 addr show\n  echo \"== ip -6 route show ==\"; ip -6 route show\n  echo \"== ip -6 route show default (expires/proto ra = RA evidence) ==\"\n  ip -6 route show default\n  echo \"== ip -4 route show default ==\"; ip -4 route show default\n  echo \"== accept_ra / forwarding (procfs; RA-suppression evidence) ==\"\n  for k in all default \"$iface\"; do\n    for s in forwarding accept_ra; do\n      v=$(cat \"/proc/sys/net/ipv6/conf/$k/$s\" 2>/dev/null)\n      echo \"net.ipv6.conf.$k.$s = ${v:-<unavailable>}\"\n    done\n  done\n  echo \"== resolvectl status ==\"\n  if command -v resolvectl >/dev/null 2>&1; then resolvectl status 2>&1\n  else echo \"resolvectl not installed\"; fi\n  echo \"== /etc/resolv.conf (resolver stub) ==\"\n  cat /etc/resolv.conf 2>/dev/null || echo \"(absent)\"\n  echo \"== /run/systemd/resolve/resolv.conf (upstreams) ==\"\n  cat /run/systemd/resolve/resolv.conf 2>/dev/null    || echo \"(no systemd-resolved upstream file)\"\n  for d in $targets; do\n    echo \"== target: $d ==\"\n    echo \"-- getent ahosts (families glibc returns) --\"\n    getent ahosts \"$d\" 2>&1\n    if command -v resolvectl >/dev/null 2>&1; then\n      echo \"-- resolvectl query --\"; resolvectl query --cache=no \"$d\" 2>&1\n    fi\n    v6=$(getent ahosts \"$d\" 2>/dev/null | awk '$1~/:/{print $1; exit}')\n    v4=$(getent ahosts \"$d\" 2>/dev/null         | awk '$1~/^[0-9]+(\\.[0-9]+){3}$/{print $1; exit}')\n    if [ -n \"$v6\" ]; then\n      echo \"-- ip -6 route get $v6 --\"; ip -6 route get \"$v6\" 2>&1\n    fi\n    if [ -n \"$v4\" ]; then\n      echo \"-- ip -4 route get $v4 --\"; ip -4 route get \"$v4\" 2>&1\n    fi\n    # Several attempts per family: a single sample misclassifies a\n    # ~50%-loss path as healthy or dead by coin flip, defeating the\n    # pre/post bracket. Bounded and in-line -- not a background sampler.\n    for fam in 6 4; do\n      echo \"-- curl -$fam (3 attempts) --\"\n      ok=0\n      for n in 1 2 3; do\n        curl -$fam -sS -m 10 -o /dev/null          -w \"  #$n http=%{http_code} ip=%{remote_ip} t=%{time_total}s\\n\"          \"https://$d/\" 2>&1 && ok=1 || echo \"  #$n curl -$fam FAILED\"\n      done\n      # Trace only the family that failed, to its resolved address:\n      # localises WHERE the failing path dies instead of tracing the\n      # healthy family. v4 via traceroute, v6 via traceroute6.\n      if [ \"$ok\" = 0 ]; then\n        addr=$v6; [ \"$fam\" = 4 ] && addr=$v4\n        tr=traceroute6; [ \"$fam\" = 4 ] && tr=traceroute\n        if [ -n \"$addr\" ] && command -v \"$tr\" >/dev/null 2>&1; then\n          echo \"  !! curl -$fam failed 3x; $tr to $addr\"\n          timeout 30 \"$tr\" -q1 -w2 \"$addr\" 2>&1\n        fi\n      fi\n    done\n  done\n  echo \"== ping -6 gateway ==\"\n  if [ -n \"$gw\" ]; then\n    ping -6 -c1 -W2 \"${gw}%${iface}\" 2>&1\n  else echo \"no v6 gw\"; fi\n} > \"$out\" 2>&1\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-f203-7898-000000000040-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "results_file": "/home/zuul/.ansible_async/j182036063171.1037",
                            "start": "2026-10-02 11:52:40.016786",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-f203-7898-000000000040-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:50.815600Z",
                            "start": "2026-10-02T11:52:39.187084Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000040",
                        "name": "Snapshot dual-stack network state (pre)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "false_condition": "diagnose_network_phase == \"post\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:50.868047Z",
                            "start": "2026-10-02T11:52:50.822001Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000041",
                        "name": "Snapshot Docker/BuildKit IPv6 config (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "false_condition": "diagnose_network_phase == \"post\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:50.924148Z",
                            "start": "2026-10-02T11:52:50.874199Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000042",
                        "name": "Probe container network namespace (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "cmd": "set +e\nset -o pipefail\nnet=/home/zuul/zuul-output/logs/net-debug.pre.txt\nsud=/home/zuul/zuul-output/logs/sudo-debug.txt\n\nemit() {\n  echo \"$1\"\n  {\n    echo \"== isolation gate ==\"\n    echo \"$1\"\n  } >> \"$net\" 2>/dev/null\n  exit 0\n}\n\n[ -s \"$sud\" ]  || emit \"VERDICT=unknown reason=no-sudo-debug-snapshot\"\n\n# (A) Raw-IP reachability, independent of DNS. Three targets, one\n#     packet each; the role above writes one summary line per target.\nprobes=$(grep -cE '[0-9]+% packet loss' \"$sud\")\nlost=$(grep -cE '100% packet loss' \"$sud\")\n[ \"$probes\" -ge 3 ]  || emit \"VERDICT=unknown reason=too-few-ping-probes probes=$probes\"\n[ \"$lost\" -eq \"$probes\" ]  || emit \"VERDICT=healthy reason=ping-answered lost=$lost/$probes\"\n\n# (B) Cost of resolving the hostname of the node itself.\ngetent=$(awk '/^getent: /{print $2; exit}' \"$sud\" 2>/dev/null)\n[ -n \"$getent\" ]  || emit \"VERDICT=unknown reason=no-getent-timing\"\nslow=$(awk -v g=\"$getent\" -v t=5.0  'BEGIN {print (g + 0 >= t + 0) ? 1 : 0}')\n[ \"$slow\" = 1 ]  || emit \"VERDICT=unknown reason=ping-dead-but-dns-fast getent=${getent}s\"\n\n# (C) Veto only: if any HTTPS probe above got a response, the node\n#     has egress whatever ping and DNS say. Absent or truncated file\n#     cannot block the verdict -- it just cannot veto it.\nanswered=$(grep -cE 'http=[1-5][0-9]{2}' \"$net\" 2>/dev/null)\n[ \"${answered:-0}\" -eq 0 ]  || emit \"VERDICT=healthy reason=https-answered answered=$answered\"\n\nemit \"VERDICT=isolated ping_lost=$lost/$probes getent=${getent}s\"\n",
                            "delta": "0:00:00.011594",
                            "end": "2026-10-02 11:52:51.224981",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nset -o pipefail\nnet=/home/zuul/zuul-output/logs/net-debug.pre.txt\nsud=/home/zuul/zuul-output/logs/sudo-debug.txt\n\nemit() {\n  echo \"$1\"\n  {\n    echo \"== isolation gate ==\"\n    echo \"$1\"\n  } >> \"$net\" 2>/dev/null\n  exit 0\n}\n\n[ -s \"$sud\" ]  || emit \"VERDICT=unknown reason=no-sudo-debug-snapshot\"\n\n# (A) Raw-IP reachability, independent of DNS. Three targets, one\n#     packet each; the role above writes one summary line per target.\nprobes=$(grep -cE '[0-9]+% packet loss' \"$sud\")\nlost=$(grep -cE '100% packet loss' \"$sud\")\n[ \"$probes\" -ge 3 ]  || emit \"VERDICT=unknown reason=too-few-ping-probes probes=$probes\"\n[ \"$lost\" -eq \"$probes\" ]  || emit \"VERDICT=healthy reason=ping-answered lost=$lost/$probes\"\n\n# (B) Cost of resolving the hostname of the node itself.\ngetent=$(awk '/^getent: /{print $2; exit}' \"$sud\" 2>/dev/null)\n[ -n \"$getent\" ]  || emit \"VERDICT=unknown reason=no-getent-timing\"\nslow=$(awk -v g=\"$getent\" -v t=5.0  'BEGIN {print (g + 0 >= t + 0) ? 1 : 0}')\n[ \"$slow\" = 1 ]  || emit \"VERDICT=unknown reason=ping-dead-but-dns-fast getent=${getent}s\"\n\n# (C) Veto only: if any HTTPS probe above got a response, the node\n#     has egress whatever ping and DNS say. Absent or truncated file\n#     cannot block the verdict -- it just cannot veto it.\nanswered=$(grep -cE 'http=[1-5][0-9]{2}' \"$net\" 2>/dev/null)\n[ \"${answered:-0}\" -eq 0 ]  || emit \"VERDICT=healthy reason=https-answered answered=$answered\"\n\nemit \"VERDICT=isolated ping_lost=$lost/$probes getent=${getent}s\"\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-f203-7898-000000000043-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-02 11:52:51.213387",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "VERDICT=healthy reason=ping-answered lost=0/3",
                            "stdout_lines": [
                                "VERDICT=healthy reason=ping-answered lost=0/3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-f203-7898-000000000043-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:51.472586Z",
                            "start": "2026-10-02T11:52:50.955753Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000043",
                        "name": "Evaluate node isolation verdict (pre-run gate)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.fail",
                            "changed": false,
                            "false_condition": "'VERDICT=isolated' in diagnose_network_gate_verdict.stdout",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f203-7898-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:51.541011Z",
                            "start": "2026-10-02T11:52:51.481481Z"
                        },
                        "id": "0242ac1f-6606-f203-7898-000000000044",
                        "name": "Abort the pre-run on a fully isolated node"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 12,
            "failures": 0,
            "ignored": 0,
            "ok": 33,
            "rescued": 0,
            "skipped": 6,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "0",
    "phase": "run",
    "playbook": "github.com/osism/k8s-capi-images/playbooks/unit-tests.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-02T11:52:53.600223Z",
                    "start": "2026-10-02T11:52:52.551748Z"
                },
                "id": "0242ac1f-6606-c5f8-968d-000000000002",
                "name": "Run the unit tests of the scripts"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.command",
                            "changed": false,
                            "cmd": [
                                "python3",
                                "-m",
                                "unittest",
                                "discover",
                                "-s",
                                "tests",
                                "-v"
                            ],
                            "delta": "0:00:00.181308",
                            "end": "2026-10-02 11:52:53.235317",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "python3 -m unittest discover -s tests -v",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "/home/zuul/src/github.com/osism/k8s-capi-images",
                                    "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": "0242ac1f-6606-c5f8-968d-000000000004-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-02 11:52:53.054009",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "test_merge_accepts_an_image_bom_without_components (test_build_sbom.MergeTest.test_merge_accepts_an_image_bom_without_components) ... ok\ntest_merge_describes_the_image_file_in_metadata_component (test_build_sbom.MergeTest.test_merge_describes_the_image_file_in_metadata_component) ... ok\ntest_merge_nests_image_packages_under_a_container_component (test_build_sbom.MergeTest.test_merge_nests_image_packages_under_a_container_component) ... ok\ntest_merge_orders_containers_like_refs (test_build_sbom.MergeTest.test_merge_orders_containers_like_refs) ... ok\ntest_merge_output_has_unique_bom_refs_and_no_dangling_dependency (test_build_sbom.MergeTest.test_merge_output_has_unique_bom_refs_and_no_dangling_dependency) ... ok\ntest_merge_prefixes_the_bom_ref_of_components_nested_in_image_packages (test_build_sbom.MergeTest.test_merge_prefixes_the_bom_ref_of_components_nested_in_image_packages) ... ok\ntest_merge_rejects_a_host_bom_without_bom_format (test_build_sbom.MergeTest.test_merge_rejects_a_host_bom_without_bom_format) ... ok\ntest_merge_rejects_a_host_bom_without_components (test_build_sbom.MergeTest.test_merge_rejects_a_host_bom_without_components) ... ok\ntest_merge_rejects_a_malformed_sha256 (test_build_sbom.MergeTest.test_merge_rejects_a_malformed_sha256) ... ok\ntest_merge_rejects_an_image_bom_of_another_spec_version (test_build_sbom.MergeTest.test_merge_rejects_an_image_bom_of_another_spec_version) ... ok\ntest_merge_reports_a_missing_image_bom (test_build_sbom.MergeTest.test_merge_reports_a_missing_image_bom) ... ok\ntest_merge_reports_an_output_path_it_cannot_write (test_build_sbom.MergeTest.test_merge_reports_an_output_path_it_cannot_write) ... ok\ntest_merge_takes_the_first_sorted_tag_of_an_image_with_several_tags (test_build_sbom.MergeTest.test_merge_takes_the_first_sorted_tag_of_an_image_with_several_tags) ... ok\ntest_merge_takes_the_tag_of_a_registry_with_a_port_from_the_last_colon (test_build_sbom.MergeTest.test_merge_takes_the_tag_of_a_registry_with_a_port_from_the_last_colon) ... ok\ntest_merge_uses_the_digest_as_version_without_a_tag (test_build_sbom.MergeTest.test_merge_uses_the_digest_as_version_without_a_tag) ... ok\ntest_merge_validates_the_record_before_reading_boms (test_build_sbom.MergeTest.test_merge_validates_the_record_before_reading_boms) ... ok\ntest_merge_writes_indented_json_with_a_trailing_newline (test_build_sbom.MergeTest.test_merge_writes_indented_json_with_a_trailing_newline) ... ok\ntest_refs_prints_one_sorted_reference_per_image (test_build_sbom.RefsTest.test_refs_prints_one_sorted_reference_per_image) ... ok\ntest_refs_rejects_a_record_without_images_list (test_build_sbom.RefsTest.test_refs_rejects_a_record_without_images_list) ... ok\ntest_refs_rejects_a_reference_with_a_space (test_build_sbom.RefsTest.test_refs_rejects_a_reference_with_a_space) ... ok\ntest_refs_rejects_a_reference_without_a_sha256_digest (test_build_sbom.RefsTest.test_refs_rejects_a_reference_without_a_sha256_digest) ... ok\ntest_refs_rejects_an_empty_images_list (test_build_sbom.RefsTest.test_refs_rejects_an_empty_images_list) ... ok\ntest_refs_rejects_an_image_entry_without_an_id_or_that_is_not_an_object (test_build_sbom.RefsTest.test_refs_rejects_an_image_entry_without_an_id_or_that_is_not_an_object) ... ok\ntest_refs_rejects_an_image_without_repo_digests (test_build_sbom.RefsTest.test_refs_rejects_an_image_without_repo_digests) ... ok\ntest_refs_reports_an_unreadable_record (test_build_sbom.RefsTest.test_refs_reports_an_unreadable_record) ... ok\n\n----------------------------------------------------------------------\nRan 25 tests in 0.071s\n\nOK",
                            "stdout_lines": [
                                "test_merge_accepts_an_image_bom_without_components (test_build_sbom.MergeTest.test_merge_accepts_an_image_bom_without_components) ... ok",
                                "test_merge_describes_the_image_file_in_metadata_component (test_build_sbom.MergeTest.test_merge_describes_the_image_file_in_metadata_component) ... ok",
                                "test_merge_nests_image_packages_under_a_container_component (test_build_sbom.MergeTest.test_merge_nests_image_packages_under_a_container_component) ... ok",
                                "test_merge_orders_containers_like_refs (test_build_sbom.MergeTest.test_merge_orders_containers_like_refs) ... ok",
                                "test_merge_output_has_unique_bom_refs_and_no_dangling_dependency (test_build_sbom.MergeTest.test_merge_output_has_unique_bom_refs_and_no_dangling_dependency) ... ok",
                                "test_merge_prefixes_the_bom_ref_of_components_nested_in_image_packages (test_build_sbom.MergeTest.test_merge_prefixes_the_bom_ref_of_components_nested_in_image_packages) ... ok",
                                "test_merge_rejects_a_host_bom_without_bom_format (test_build_sbom.MergeTest.test_merge_rejects_a_host_bom_without_bom_format) ... ok",
                                "test_merge_rejects_a_host_bom_without_components (test_build_sbom.MergeTest.test_merge_rejects_a_host_bom_without_components) ... ok",
                                "test_merge_rejects_a_malformed_sha256 (test_build_sbom.MergeTest.test_merge_rejects_a_malformed_sha256) ... ok",
                                "test_merge_rejects_an_image_bom_of_another_spec_version (test_build_sbom.MergeTest.test_merge_rejects_an_image_bom_of_another_spec_version) ... ok",
                                "test_merge_reports_a_missing_image_bom (test_build_sbom.MergeTest.test_merge_reports_a_missing_image_bom) ... ok",
                                "test_merge_reports_an_output_path_it_cannot_write (test_build_sbom.MergeTest.test_merge_reports_an_output_path_it_cannot_write) ... ok",
                                "test_merge_takes_the_first_sorted_tag_of_an_image_with_several_tags (test_build_sbom.MergeTest.test_merge_takes_the_first_sorted_tag_of_an_image_with_several_tags) ... ok",
                                "test_merge_takes_the_tag_of_a_registry_with_a_port_from_the_last_colon (test_build_sbom.MergeTest.test_merge_takes_the_tag_of_a_registry_with_a_port_from_the_last_colon) ... ok",
                                "test_merge_uses_the_digest_as_version_without_a_tag (test_build_sbom.MergeTest.test_merge_uses_the_digest_as_version_without_a_tag) ... ok",
                                "test_merge_validates_the_record_before_reading_boms (test_build_sbom.MergeTest.test_merge_validates_the_record_before_reading_boms) ... ok",
                                "test_merge_writes_indented_json_with_a_trailing_newline (test_build_sbom.MergeTest.test_merge_writes_indented_json_with_a_trailing_newline) ... ok",
                                "test_refs_prints_one_sorted_reference_per_image (test_build_sbom.RefsTest.test_refs_prints_one_sorted_reference_per_image) ... ok",
                                "test_refs_rejects_a_record_without_images_list (test_build_sbom.RefsTest.test_refs_rejects_a_record_without_images_list) ... ok",
                                "test_refs_rejects_a_reference_with_a_space (test_build_sbom.RefsTest.test_refs_rejects_a_reference_with_a_space) ... ok",
                                "test_refs_rejects_a_reference_without_a_sha256_digest (test_build_sbom.RefsTest.test_refs_rejects_a_reference_without_a_sha256_digest) ... ok",
                                "test_refs_rejects_an_empty_images_list (test_build_sbom.RefsTest.test_refs_rejects_an_empty_images_list) ... ok",
                                "test_refs_rejects_an_image_entry_without_an_id_or_that_is_not_an_object (test_build_sbom.RefsTest.test_refs_rejects_an_image_entry_without_an_id_or_that_is_not_an_object) ... ok",
                                "test_refs_rejects_an_image_without_repo_digests (test_build_sbom.RefsTest.test_refs_rejects_an_image_without_repo_digests) ... ok",
                                "test_refs_reports_an_unreadable_record (test_build_sbom.RefsTest.test_refs_reports_an_unreadable_record) ... ok",
                                "",
                                "----------------------------------------------------------------------",
                                "Ran 25 tests in 0.071s",
                                "",
                                "OK"
                            ],
                            "zuul_log_id": "0242ac1f-6606-c5f8-968d-000000000004-1-debianbookworm"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:53.600223Z",
                            "start": "2026-10-02T11:52:52.585839Z"
                        },
                        "id": "0242ac1f-6606-c5f8-968d-000000000004",
                        "name": "Run the unit tests"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 0,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/osism/zuul-config/playbooks/base/post-fetch.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-02T11:53:22.641186Z",
                    "start": "2026-10-02T11:52:54.529406Z"
                },
                "id": "0242ac1f-6606-a829-6b1c-000000000002",
                "name": "Base post-fetch"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/zuul-output/logs"
                                },
                                "before": {
                                    "path": "/home/zuul/zuul-output/logs"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": "0755",
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/zuul-output/logs",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "zuul",
                            "path": "/home/zuul/zuul-output/logs",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:52:54.968441Z",
                            "start": "2026-10-02T11:52:54.543554Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-000000000009",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j32165381792.1162",
                            "changed": false,
                            "cmd": "set +e\nset -o pipefail\nphase=post\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\ntargets=\"tarballs.opendev.org galaxy.ansible.com\"\niface=$(ip -6 route show default 2>/dev/null        | awk '{for(i=1;i<=NF;i++) if($i==\"dev\"){print $(i+1); exit}}')\n: \"${iface:=eth0}\"\ngw=$(ip -6 route show default 2>/dev/null     | awk '{for(i=1;i<=NF;i++) if($i==\"via\"){print $(i+1); exit}}')\n{\n  echo \"== date ==\";    date -Is\n  echo \"== iface / gw ==\"; echo \"iface=$iface gw=$gw\"\n  echo \"== ip -6 addr (lifetimes = SLAAC evidence) ==\"; ip -6 addr show\n  echo \"== ip -6 route show ==\"; ip -6 route show\n  echo \"== ip -6 route show default (expires/proto ra = RA evidence) ==\"\n  ip -6 route show default\n  echo \"== ip -4 route show default ==\"; ip -4 route show default\n  echo \"== accept_ra / forwarding (procfs; RA-suppression evidence) ==\"\n  for k in all default \"$iface\"; do\n    for s in forwarding accept_ra; do\n      v=$(cat \"/proc/sys/net/ipv6/conf/$k/$s\" 2>/dev/null)\n      echo \"net.ipv6.conf.$k.$s = ${v:-<unavailable>}\"\n    done\n  done\n  echo \"== resolvectl status ==\"\n  if command -v resolvectl >/dev/null 2>&1; then resolvectl status 2>&1\n  else echo \"resolvectl not installed\"; fi\n  echo \"== /etc/resolv.conf (resolver stub) ==\"\n  cat /etc/resolv.conf 2>/dev/null || echo \"(absent)\"\n  echo \"== /run/systemd/resolve/resolv.conf (upstreams) ==\"\n  cat /run/systemd/resolve/resolv.conf 2>/dev/null    || echo \"(no systemd-resolved upstream file)\"\n  for d in $targets; do\n    echo \"== target: $d ==\"\n    echo \"-- getent ahosts (families glibc returns) --\"\n    getent ahosts \"$d\" 2>&1\n    if command -v resolvectl >/dev/null 2>&1; then\n      echo \"-- resolvectl query --\"; resolvectl query --cache=no \"$d\" 2>&1\n    fi\n    v6=$(getent ahosts \"$d\" 2>/dev/null | awk '$1~/:/{print $1; exit}')\n    v4=$(getent ahosts \"$d\" 2>/dev/null         | awk '$1~/^[0-9]+(\\.[0-9]+){3}$/{print $1; exit}')\n    if [ -n \"$v6\" ]; then\n      echo \"-- ip -6 route get $v6 --\"; ip -6 route get \"$v6\" 2>&1\n    fi\n    if [ -n \"$v4\" ]; then\n      echo \"-- ip -4 route get $v4 --\"; ip -4 route get \"$v4\" 2>&1\n    fi\n    # Several attempts per family: a single sample misclassifies a\n    # ~50%-loss path as healthy or dead by coin flip, defeating the\n    # pre/post bracket. Bounded and in-line -- not a background sampler.\n    for fam in 6 4; do\n      echo \"-- curl -$fam (3 attempts) --\"\n      ok=0\n      for n in 1 2 3; do\n        curl -$fam -sS -m 10 -o /dev/null          -w \"  #$n http=%{http_code} ip=%{remote_ip} t=%{time_total}s\\n\"          \"https://$d/\" 2>&1 && ok=1 || echo \"  #$n curl -$fam FAILED\"\n      done\n      # Trace only the family that failed, to its resolved address:\n      # localises WHERE the failing path dies instead of tracing the\n      # healthy family. v4 via traceroute, v6 via traceroute6.\n      if [ \"$ok\" = 0 ]; then\n        addr=$v6; [ \"$fam\" = 4 ] && addr=$v4\n        tr=traceroute6; [ \"$fam\" = 4 ] && tr=traceroute\n        if [ -n \"$addr\" ] && command -v \"$tr\" >/dev/null 2>&1; then\n          echo \"  !! curl -$fam failed 3x; $tr to $addr\"\n          timeout 30 \"$tr\" -q1 -w2 \"$addr\" 2>&1\n        fi\n      fi\n    done\n  done\n  echo \"== ping -6 gateway ==\"\n  if [ -n \"$gw\" ]; then\n    ping -6 -c1 -W2 \"${gw}%${iface}\" 2>&1\n  else echo \"no v6 gw\"; fi\n} > \"$out\" 2>&1\n",
                            "delta": "0:00:06.018972",
                            "end": "2026-10-02 11:53:01.949619",
                            "failed_when_result": false,
                            "finished": 1,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nset -o pipefail\nphase=post\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\ntargets=\"tarballs.opendev.org galaxy.ansible.com\"\niface=$(ip -6 route show default 2>/dev/null        | awk '{for(i=1;i<=NF;i++) if($i==\"dev\"){print $(i+1); exit}}')\n: \"${iface:=eth0}\"\ngw=$(ip -6 route show default 2>/dev/null     | awk '{for(i=1;i<=NF;i++) if($i==\"via\"){print $(i+1); exit}}')\n{\n  echo \"== date ==\";    date -Is\n  echo \"== iface / gw ==\"; echo \"iface=$iface gw=$gw\"\n  echo \"== ip -6 addr (lifetimes = SLAAC evidence) ==\"; ip -6 addr show\n  echo \"== ip -6 route show ==\"; ip -6 route show\n  echo \"== ip -6 route show default (expires/proto ra = RA evidence) ==\"\n  ip -6 route show default\n  echo \"== ip -4 route show default ==\"; ip -4 route show default\n  echo \"== accept_ra / forwarding (procfs; RA-suppression evidence) ==\"\n  for k in all default \"$iface\"; do\n    for s in forwarding accept_ra; do\n      v=$(cat \"/proc/sys/net/ipv6/conf/$k/$s\" 2>/dev/null)\n      echo \"net.ipv6.conf.$k.$s = ${v:-<unavailable>}\"\n    done\n  done\n  echo \"== resolvectl status ==\"\n  if command -v resolvectl >/dev/null 2>&1; then resolvectl status 2>&1\n  else echo \"resolvectl not installed\"; fi\n  echo \"== /etc/resolv.conf (resolver stub) ==\"\n  cat /etc/resolv.conf 2>/dev/null || echo \"(absent)\"\n  echo \"== /run/systemd/resolve/resolv.conf (upstreams) ==\"\n  cat /run/systemd/resolve/resolv.conf 2>/dev/null    || echo \"(no systemd-resolved upstream file)\"\n  for d in $targets; do\n    echo \"== target: $d ==\"\n    echo \"-- getent ahosts (families glibc returns) --\"\n    getent ahosts \"$d\" 2>&1\n    if command -v resolvectl >/dev/null 2>&1; then\n      echo \"-- resolvectl query --\"; resolvectl query --cache=no \"$d\" 2>&1\n    fi\n    v6=$(getent ahosts \"$d\" 2>/dev/null | awk '$1~/:/{print $1; exit}')\n    v4=$(getent ahosts \"$d\" 2>/dev/null         | awk '$1~/^[0-9]+(\\.[0-9]+){3}$/{print $1; exit}')\n    if [ -n \"$v6\" ]; then\n      echo \"-- ip -6 route get $v6 --\"; ip -6 route get \"$v6\" 2>&1\n    fi\n    if [ -n \"$v4\" ]; then\n      echo \"-- ip -4 route get $v4 --\"; ip -4 route get \"$v4\" 2>&1\n    fi\n    # Several attempts per family: a single sample misclassifies a\n    # ~50%-loss path as healthy or dead by coin flip, defeating the\n    # pre/post bracket. Bounded and in-line -- not a background sampler.\n    for fam in 6 4; do\n      echo \"-- curl -$fam (3 attempts) --\"\n      ok=0\n      for n in 1 2 3; do\n        curl -$fam -sS -m 10 -o /dev/null          -w \"  #$n http=%{http_code} ip=%{remote_ip} t=%{time_total}s\\n\"          \"https://$d/\" 2>&1 && ok=1 || echo \"  #$n curl -$fam FAILED\"\n      done\n      # Trace only the family that failed, to its resolved address:\n      # localises WHERE the failing path dies instead of tracing the\n      # healthy family. v4 via traceroute, v6 via traceroute6.\n      if [ \"$ok\" = 0 ]; then\n        addr=$v6; [ \"$fam\" = 4 ] && addr=$v4\n        tr=traceroute6; [ \"$fam\" = 4 ] && tr=traceroute\n        if [ -n \"$addr\" ] && command -v \"$tr\" >/dev/null 2>&1; then\n          echo \"  !! curl -$fam failed 3x; $tr to $addr\"\n          timeout 30 \"$tr\" -q1 -w2 \"$addr\" 2>&1\n        fi\n      fi\n    done\n  done\n  echo \"== ping -6 gateway ==\"\n  if [ -n \"$gw\" ]; then\n    ping -6 -c1 -W2 \"${gw}%${iface}\" 2>&1\n  else echo \"no v6 gw\"; fi\n} > \"$out\" 2>&1\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-a829-6b1c-00000000000a-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "results_file": "/home/zuul/.ansible_async/j32165381792.1162",
                            "start": "2026-10-02 11:52:55.930647",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-a829-6b1c-00000000000a-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:06.724215Z",
                            "start": "2026-10-02T11:52:54.979361Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-00000000000a",
                        "name": "Snapshot dual-stack network state (post)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j743754430918.1268",
                            "changed": false,
                            "cmd": "set +e\nset -o pipefail\nphase=post\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\n{\n  echo \"== docker / buildkit IPv6 config ==\"\n  if ! command -v docker >/dev/null 2>&1; then\n    echo \"docker not available; skipped\"\n  else\n    echo \"-- docker info (IPv6 lines) --\"\n    if info=$(timeout 30 docker info 2>&1); then\n      printf '%s\\n' \"$info\" | grep -iE 'ipv6|ip6tables'        || echo \"(no IPv6 lines)\"\n    else\n      echo \"docker info FAILED/timed out (daemon down or no permission):\"\n      printf '%s\\n' \"$info\" | head -5\n    fi\n    echo \"-- /etc/docker/daemon.json --\"\n    cat /etc/docker/daemon.json 2>/dev/null || echo \"(absent)\"\n    echo \"-- docker network inspect bridge (EnableIPv6 + IPAM) --\"\n    timeout 30 docker network inspect bridge 2>&1      | grep -iE '\"Name\"|EnableIPv6|Subnet|Gateway'      || echo \"(inspect failed)\"\n    echo \"-- docker buildx ls --\"\n    timeout 30 docker buildx ls 2>&1 || echo \"(buildx unavailable)\"\n  fi\n} >> \"$out\" 2>&1\n",
                            "delta": "0:00:00.007139",
                            "end": "2026-10-02 11:53:07.384971",
                            "failed_when_result": false,
                            "finished": 1,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nset -o pipefail\nphase=post\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\n{\n  echo \"== docker / buildkit IPv6 config ==\"\n  if ! command -v docker >/dev/null 2>&1; then\n    echo \"docker not available; skipped\"\n  else\n    echo \"-- docker info (IPv6 lines) --\"\n    if info=$(timeout 30 docker info 2>&1); then\n      printf '%s\\n' \"$info\" | grep -iE 'ipv6|ip6tables'        || echo \"(no IPv6 lines)\"\n    else\n      echo \"docker info FAILED/timed out (daemon down or no permission):\"\n      printf '%s\\n' \"$info\" | head -5\n    fi\n    echo \"-- /etc/docker/daemon.json --\"\n    cat /etc/docker/daemon.json 2>/dev/null || echo \"(absent)\"\n    echo \"-- docker network inspect bridge (EnableIPv6 + IPAM) --\"\n    timeout 30 docker network inspect bridge 2>&1      | grep -iE '\"Name\"|EnableIPv6|Subnet|Gateway'      || echo \"(inspect failed)\"\n    echo \"-- docker buildx ls --\"\n    timeout 30 docker buildx ls 2>&1 || echo \"(buildx unavailable)\"\n  fi\n} >> \"$out\" 2>&1\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-a829-6b1c-00000000000b-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results_file": "/home/zuul/.ansible_async/j743754430918.1268",
                            "start": "2026-10-02 11:53:07.377832",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-a829-6b1c-00000000000b-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:12.750900Z",
                            "start": "2026-10-02T11:53:06.730305Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-00000000000b",
                        "name": "Snapshot Docker/BuildKit IPv6 config (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j1468765764.1303",
                            "changed": false,
                            "cmd": "set +e\nset -o pipefail\nphase=post\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\ntargets=\"tarballs.opendev.org galaxy.ansible.com\"\n{\n  echo \"== container netns exec probe (default bridge) ==\"\n  if ! command -v docker >/dev/null 2>&1; then\n    echo \"docker not available; skipped\"\n  else\n    # Prefer a full base image likely to carry ip/curl/getent,\n    # skipping dangling (<none>) tags; fall back to any local image\n    # ID (a valid run reference). Never pull. (docker image ls\n    # columns: REPOSITORY TAG IMAGE_ID ...)\n    img=$(timeout 30 docker image ls 2>/dev/null | awk      '$1~/^(ubuntu|debian)$/ && $2!=\"<none>\"{print $1\":\"$2; exit}')\n    if [ -z \"$img\" ]; then\n      img=$(timeout 30 docker image ls -q 2>/dev/null | head -1)\n    fi\n    if [ -z \"$img\" ]; then\n      echo \"no local image; skipped (will not pull over a broken network)\"\n    else\n      echo \"using local image $img\"\n      # Bound the whole probe: on the degraded node this role exists\n      # to diagnose, a wedged daemon can make `docker run` hang\n      # indefinitely and stall teardown. timeout keeps it best-effort.\n      # A killed client may orphan the container, but the node is torn\n      # down right after, so that is acceptable here.\n      timeout 60 docker run --rm \"$img\" sh -c '\n        echo \"tools: ip=$(command -v ip || echo no)\" \\\n             \"curl=$(command -v curl || echo no)\" \\\n             \"getent=$(command -v getent || echo no)\"\n        echo \"-- ip -6 addr / route --\"\n        (ip -6 addr show 2>/dev/null; ip -6 route show 2>/dev/null) \\\n          || cat /proc/net/ipv6_route 2>/dev/null || echo \"no ip tool\"\n        echo \"-- /etc/resolv.conf --\"; cat /etc/resolv.conf 2>/dev/null\n        for d in '\"$targets\"'; do\n          echo \"target $d:\"\n          getent ahosts \"$d\" 2>&1 | head -4 || echo \"  getent unavailable\"\n          (curl -6 -sS -m 8 -o /dev/null \\\n             -w \"  v6 %{http_code} %{remote_ip} t=%{time_total}\\n\" \\\n             \"https://$d/\" 2>&1 || echo \"  v6 FAIL/unavailable\")\n          (curl -4 -sS -m 8 -o /dev/null \\\n             -w \"  v4 %{http_code} %{remote_ip} t=%{time_total}\\n\" \\\n             \"https://$d/\" 2>&1 || echo \"  v4 FAIL/unavailable\")\n        done\n      ' 2>&1\n    fi\n  fi\n} >> \"$out\" 2>&1\n",
                            "delta": "0:00:00.005694",
                            "end": "2026-10-02 11:53:13.500826",
                            "failed_when_result": false,
                            "finished": 1,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nset -o pipefail\nphase=post\nout=/home/zuul/zuul-output/logs/net-debug.$phase.txt\ntargets=\"tarballs.opendev.org galaxy.ansible.com\"\n{\n  echo \"== container netns exec probe (default bridge) ==\"\n  if ! command -v docker >/dev/null 2>&1; then\n    echo \"docker not available; skipped\"\n  else\n    # Prefer a full base image likely to carry ip/curl/getent,\n    # skipping dangling (<none>) tags; fall back to any local image\n    # ID (a valid run reference). Never pull. (docker image ls\n    # columns: REPOSITORY TAG IMAGE_ID ...)\n    img=$(timeout 30 docker image ls 2>/dev/null | awk      '$1~/^(ubuntu|debian)$/ && $2!=\"<none>\"{print $1\":\"$2; exit}')\n    if [ -z \"$img\" ]; then\n      img=$(timeout 30 docker image ls -q 2>/dev/null | head -1)\n    fi\n    if [ -z \"$img\" ]; then\n      echo \"no local image; skipped (will not pull over a broken network)\"\n    else\n      echo \"using local image $img\"\n      # Bound the whole probe: on the degraded node this role exists\n      # to diagnose, a wedged daemon can make `docker run` hang\n      # indefinitely and stall teardown. timeout keeps it best-effort.\n      # A killed client may orphan the container, but the node is torn\n      # down right after, so that is acceptable here.\n      timeout 60 docker run --rm \"$img\" sh -c '\n        echo \"tools: ip=$(command -v ip || echo no)\" \\\n             \"curl=$(command -v curl || echo no)\" \\\n             \"getent=$(command -v getent || echo no)\"\n        echo \"-- ip -6 addr / route --\"\n        (ip -6 addr show 2>/dev/null; ip -6 route show 2>/dev/null) \\\n          || cat /proc/net/ipv6_route 2>/dev/null || echo \"no ip tool\"\n        echo \"-- /etc/resolv.conf --\"; cat /etc/resolv.conf 2>/dev/null\n        for d in '\"$targets\"'; do\n          echo \"target $d:\"\n          getent ahosts \"$d\" 2>&1 | head -4 || echo \"  getent unavailable\"\n          (curl -6 -sS -m 8 -o /dev/null \\\n             -w \"  v6 %{http_code} %{remote_ip} t=%{time_total}\\n\" \\\n             \"https://$d/\" 2>&1 || echo \"  v6 FAIL/unavailable\")\n          (curl -4 -sS -m 8 -o /dev/null \\\n             -w \"  v4 %{http_code} %{remote_ip} t=%{time_total}\\n\" \\\n             \"https://$d/\" 2>&1 || echo \"  v4 FAIL/unavailable\")\n        done\n      ' 2>&1\n    fi\n  fi\n} >> \"$out\" 2>&1\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-a829-6b1c-00000000000c-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results_file": "/home/zuul/.ansible_async/j1468765764.1303",
                            "start": "2026-10-02 11:53:13.495132",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-a829-6b1c-00000000000c-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:18.839942Z",
                            "start": "2026-10-02T11:53:12.764010Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-00000000000c",
                        "name": "Probe container network namespace (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "false_condition": "diagnose_network_phase == \"pre\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:19.380529Z",
                            "start": "2026-10-02T11:53:18.867510Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-00000000000d",
                        "name": "Evaluate node isolation verdict (pre-run gate)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.fail",
                            "changed": false,
                            "false_condition": "diagnose_network_phase == \"pre\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:19.429001Z",
                            "start": "2026-10-02T11:53:19.392466Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-00000000000e",
                        "name": "Abort the pre-run on a fully isolated node"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:19.481125Z",
                            "start": "2026-10-02T11:53:19.438054Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-000000000012",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:19.512832Z",
                            "start": "2026-10-02T11:53:19.485524Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-000000000013",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:20.234043Z",
                            "start": "2026-10-02T11:53:19.516934Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-000000000014",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' '[zuul@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:/home/zuul/zuul-output/logs/' /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n>f+++++++++ net-debug.post.txt\n>f+++++++++ net-debug.pre.txt\n>f+++++++++ sudo-debug.txt\n>f+++++++++ sudo-strace.log\n>f+++++++++ sudo-strace.log.time\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./",
                                        ">f+++++++++ net-debug.post.txt",
                                        ">f+++++++++ net-debug.pre.txt",
                                        ">f+++++++++ sudo-debug.txt",
                                        ">f+++++++++ sudo-strace.log",
                                        ">f+++++++++ sudo-strace.log.time"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:/home/zuul/zuul-output/artifacts/' /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:/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/3f4f26fc63f248bbbf0fdd89615820fb/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@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:/home/zuul/zuul-output/docs/' /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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@2a13:1a81:8000:3124:f816:3eff:fe23:2983]:/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/3f4f26fc63f248bbbf0fdd89615820fb/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:22.048967Z",
                            "start": "2026-10-02T11:53:20.240749Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-000000000016",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/artifacts/* /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.009547",
                                    "end": "2026-10-02 11:53:22.345437",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/artifacts/* /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-10-02 11:53:22.335890",
                                    "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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/docs/* /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.009517",
                                    "end": "2026-10-02 11:53:22.596174",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/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/3f4f26fc63f248bbbf0fdd89615820fb/work/docs/* /var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/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_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-10-02 11:53:22.586657",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-a829-6b1c-000000000019",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:22.641186Z",
                            "start": "2026-10-02T11:53:22.060107Z"
                        },
                        "id": "0242ac1f-6606-a829-6b1c-00000000001b",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 8,
            "rescued": 0,
            "skipped": 3,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "1",
    "phase": "post",
    "playbook": "github.com/osism/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-02T11:53:24.031737Z",
                    "start": "2026-10-02T11:53:23.427931Z"
                },
                "id": "0242ac1f-6606-a042-9d4d-000000000002",
                "name": "Base post"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDF/o8b3Kkmh5Gp2mgepc14wxF8LPaWkThwyCIn2ADrz+Hmq/QoxmncdUtpSkKLKq7I08JFQmc9XiH2Urh6M78KYxSLjF12ZFvrIhxy8+VuCDZBDenlo0bRNtju7/NaXXzyJntUgGaxlinIzCrnXHQQmxdKOkMFaoyNz79gugAPyoCab2K/wnUXeh+sLCZIb3af60ra8E1qNZn0yy62tV2FTpTpiTQAiyi9lOoPmnCUCUdBhm2mZYdxhBQ/9ekXQzCver8dL1jsfCJWqyblzrxl2Ly7UwRk/CKxekZojGv0fn+jXdZBpCtXRxUqRF46z2adXXfOqT+x8NnpF/P5xbtg82viWEcSp/0IFHQXcZEA/dmdcf8WHnOC/lpdiF54nYrDRfOqDVJLlItk2iqzs/kRI+Bo4R9AXiv25XPOkXBUFVwyAM/VK4YLvt7gi8nfASAfh11vdo4mDJ9p9sq+OgMgdT04jh6BZSiF123IkkYCPRhFquuWQ354QGN0HEOmPKM= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDF/o8b3Kkmh5Gp2mgepc14wxF8LPaWkThwyCIn2ADrz+Hmq/QoxmncdUtpSkKLKq7I08JFQmc9XiH2Urh6M78KYxSLjF12ZFvrIhxy8+VuCDZBDenlo0bRNtju7/NaXXzyJntUgGaxlinIzCrnXHQQmxdKOkMFaoyNz79gugAPyoCab2K/wnUXeh+sLCZIb3af60ra8E1qNZn0yy62tV2FTpTpiTQAiyi9lOoPmnCUCUdBhm2mZYdxhBQ/9ekXQzCver8dL1jsfCJWqyblzrxl2Ly7UwRk/CKxekZojGv0fn+jXdZBpCtXRxUqRF46z2adXXfOqT+x8NnpF/P5xbtg82viWEcSp/0IFHQXcZEA/dmdcf8WHnOC/lpdiF54nYrDRfOqDVJLlItk2iqzs/kRI+Bo4R9AXiv25XPOkXBUFVwyAM/VK4YLvt7gi8nfASAfh11vdo4mDJ9p9sq+OgMgdT04jh6BZSiF123IkkYCPRhFquuWQ354QGN0HEOmPKM= 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": "0242ac1f-6606-a042-9d4d-000000000005",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/3f4f26fc63f248bbbf0fdd89615820fb/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-02T11:53:24.031737Z",
                            "start": "2026-10-02T11:53:23.439966Z"
                        },
                        "id": "0242ac1f-6606-a042-9d4d-000000000007",
                        "name": "Remove the build SSH key from all nodes"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": true
}
]
