[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/osism/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-20T08:59:08.311866Z",
                    "start": "2026-06-20T08:58:19.023493Z"
                },
                "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:19.068321Z",
                            "start": "2026-06-20T08:58:19.048711Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-00000000000f",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "e22/osism/e22e7d56dd89449dab535097492ba478"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-0000000000bb",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:19.135138Z",
                            "start": "2026-06-20T08:58:19.084843Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000bd",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.14\nJob: openstack-flavor-manager-integration-test\nPipeline: check\nExecutor: 521e9411259a\nTriggered by: https://github.com/osism/openstack-flavor-manager/pull/175\nEvent ID: 2398ccf0-6c86-11f1-8557-f4319eab96dc\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:19.195200Z",
                            "start": "2026-06-20T08:58:19.154985Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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.14\nProvider: regiocloud-a\nRegion: \nLabel: debian-bookworm\nProduct Name: OpenStack Nova\nInterface IP: 2a13:1a81:8000:3124:f816:3eff:fe96:467\n",
                                    "zj_item": "debian-bookworm"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:19.343196Z",
                            "start": "2026-06-20T08:58:19.200320Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000011",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000014",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:20.058991Z",
                            "start": "2026-06-20T08:58:19.353015Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000016",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "9d9de4db030b678e597a297e82069a13a49d5aa9",
                            "dest": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "9d9de4db030b678e597a297e82069a13a49d5aa9",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/.ansible/tmp/ansible-tmp-1781945900.1199334-34-212184867712859/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "98fc32b531558cb79d57f9c241ec1c60",
                            "mode": "0644",
                            "owner": "root",
                            "size": 16105,
                            "src": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/.ansible/tmp/ansible-tmp-1781945900.1199334-34-212184867712859/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000014",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:21.603924Z",
                            "start": "2026-06-20T08:58:20.071036Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:22.019790Z",
                            "start": "2026-06-20T08:58:21.631805Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:22.078205Z",
                            "start": "2026-06-20T08:58:22.026297Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.770069",
                            "end": "2026-06-20 08:58:23.624821",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_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-85a5-db17-0000000000de-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:58:22.854752",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa.pub\nThe key fingerprint is:\nSHA256:2JlBv6lblEDHQp8zW1Aej8i1lwv8vSJJYz/ozKR2W7U zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|       .+.o.+    |\n|       o.=.B = . |\n|        o.O B +  |\n|       o = O + o |\n|      . S *+  o..|\n|         oo = . o|\n|        . .= = E |\n|         +*.o o  |\n|        o..=.    |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:2JlBv6lblEDHQp8zW1Aej8i1lwv8vSJJYz/ozKR2W7U zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|       .+.o.+    |",
                                "|       o.=.B = . |",
                                "|        o.O B +  |",
                                "|       o = O + o |",
                                "|      . S *+  o..|",
                                "|         oo = . o|",
                                "|        . .= = E |",
                                "|         +*.o o  |",
                                "|        o..=.    |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac1f-6606-85a5-db17-0000000000de-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:23.667573Z",
                            "start": "2026-06-20T08:58:22.123917Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000de",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:23.711936Z",
                            "start": "2026-06-20T08:58:23.673387Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000df",
                        "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-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:23.755859Z",
                            "start": "2026-06-20T08:58:23.731858Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000fe",
                        "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 AAAAB3NzaC1yc2EAAAADAQABAAABgQC1C75Tbd0szHnTtTtUq1PVxbJjMkVh0IeeC4RmF+UnmbsCDQVVm9SCi+1jWy7wZR0Q9vZOE10UVYmcMM4SyDv+fEidQj2fF/MRoqnL6HaXpWQNVSgjPC5WZlK3zZgqLxM7rw8Enp3c3UyFkRiAFXXmxO9Rzea4qWOlDYcA5hs21NN24ANqZp3+52MyLRSlxISF2nl6vPeN7mYegNNnn8g16WIj20vBn9zR2mRU6uE0LHItMhobmkCEfRcuOuN5Y4x9E9M4mGAfVy/Zu2CzX+cVCUtKhUGLf6TJACARD9+CkWBbj+sTigpirUMzGbzsxsGPigYT7asHMlBrB7PNXqUpr4RS/37UFW+6dA7jHS2hIM/Os0vBm1YBHGg7yDKBJ8yH224z86NF1l4kcLIO6A8wappNU+jjJ9gaCLH9UIGAEpQzqY6C/yzlrKA13sLu6Ga6lTpTGMwdqvBBPUvGYiULHNnJWA+gpvbCtdOKowQT1xXzkX7OuD0I5Z6n5V5EG5U= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQC1C75Tbd0szHnTtTtUq1PVxbJjMkVh0IeeC4RmF+UnmbsCDQVVm9SCi+1jWy7wZR0Q9vZOE10UVYmcMM4SyDv+fEidQj2fF/MRoqnL6HaXpWQNVSgjPC5WZlK3zZgqLxM7rw8Enp3c3UyFkRiAFXXmxO9Rzea4qWOlDYcA5hs21NN24ANqZp3+52MyLRSlxISF2nl6vPeN7mYegNNnn8g16WIj20vBn9zR2mRU6uE0LHItMhobmkCEfRcuOuN5Y4x9E9M4mGAfVy/Zu2CzX+cVCUtKhUGLf6TJACARD9+CkWBbj+sTigpirUMzGbzsxsGPigYT7asHMlBrB7PNXqUpr4RS/37UFW+6dA7jHS2hIM/Os0vBm1YBHGg7yDKBJ8yH224z86NF1l4kcLIO6A8wappNU+jjJ9gaCLH9UIGAEpQzqY6C/yzlrKA13sLu6Ga6lTpTGMwdqvBBPUvGYiULHNnJWA+gpvbCtdOKowQT1xXzkX7OuD0I5Z6n5V5EG5U= 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-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:24.423693Z",
                            "start": "2026-06-20T08:58:23.761431Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000ff",
                        "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-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:24.693089Z",
                            "start": "2026-06-20T08:58:24.431901Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000100",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "62c91725ed7b36246b783e043dfba92f6ddf8a72",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "e22e7d56dd89449dab535097492ba478_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "62c91725ed7b36246b783e043dfba92f6ddf8a72",
                                    "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-1781945904.778488-139-80036091155607/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "00ed6b760960989d7b859cb836a9fc64",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781945904.778488-139-80036091155607/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:25.421090Z",
                            "start": "2026-06-20T08:58:24.700345Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000101",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "72a62ee1fefd659f73f971a8d79c692ba02c15ca",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "e22e7d56dd89449dab535097492ba478_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "72a62ee1fefd659f73f971a8d79c692ba02c15ca",
                                    "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-1781945905.500339-149-123229359846027/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "85234a73e0d0d2e9b29564192d4babae",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1781945905.500339-149-123229359846027/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:26.163224Z",
                            "start": "2026-06-20T08:58:25.425854Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000102",
                        "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-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:26.182165Z",
                            "start": "2026-06-20T08:58:26.168265Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000e0",
                        "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-85a5-db17-0000000000e5",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:26.710153Z",
                            "start": "2026-06-20T08:58:26.187743Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000e7",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa"
                            ],
                            "delta": "0:00:00.012611",
                            "end": "2026-06-20 08:58:27.101583",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_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-85a5-db17-0000000000ed-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:58:27.088972",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/e22e7d56dd89449dab535097492ba478_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-85a5-db17-0000000000ed-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:27.145129Z",
                            "start": "2026-06-20T08:58:26.721850Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000ed",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:27.581158Z",
                            "start": "2026-06-20T08:58:27.154898Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000ee",
                        "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-85a5-db17-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:27.616228Z",
                            "start": "2026-06-20T08:58:27.586447Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-0000000000ef",
                        "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-85a5-db17-00000000001e",
                        "name": "start-zuul-console",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/start-zuul-console"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:28.138950Z",
                            "start": "2026-06-20T08:58:27.630240Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000020",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_info_dir": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs/zuul-info"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:28.182415Z",
                            "start": "2026-06-20T08:58:28.152003Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000024",
                        "name": "Define zuul_info_dir fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs/zuul-info"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:28.488410Z",
                            "start": "2026-06-20T08:58:28.187719Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000025",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "setup",
                            "ansible_facts": {
                                "ansible_all_ipv4_addresses": [
                                    "10.128.7.210"
                                ],
                                "ansible_all_ipv6_addresses": [
                                    "2a13:1a81:8000:3124:f816:3eff:fe96:467",
                                    "fe80::f816:3eff:fe96:467"
                                ],
                                "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-49-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-06-20",
                                    "day": "20",
                                    "epoch": "1781945909",
                                    "epoch_int": "1781945909",
                                    "hour": "08",
                                    "iso8601": "2026-06-20T08:58:29Z",
                                    "iso8601_basic": "20260620T085829566734",
                                    "iso8601_basic_short": "20260620T085829",
                                    "iso8601_micro": "2026-06-20T08:58:29.566734Z",
                                    "minute": "58",
                                    "month": "06",
                                    "second": "29",
                                    "time": "08:58:29",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Saturday",
                                    "weekday_number": "6",
                                    "weeknumber": "24",
                                    "year": "2026"
                                },
                                "ansible_default_ipv4": {
                                    "address": "10.128.7.210",
                                    "alias": "ens3",
                                    "broadcast": "10.128.7.255",
                                    "gateway": "10.128.7.1",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:96:04:67",
                                    "mtu": 1500,
                                    "netmask": "255.255.255.0",
                                    "network": "10.128.7.0",
                                    "prefix": "24",
                                    "type": "ether"
                                },
                                "ansible_default_ipv6": {
                                    "address": "2a13:1a81:8000:3124:f816:3eff:fe96:467",
                                    "gateway": "fe80::f816:3eff:fe92:ad10",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:96:04:67",
                                    "mtu": 1500,
                                    "prefix": "64",
                                    "scope": "global",
                                    "type": "ether"
                                },
                                "ansible_device_links": {
                                    "ids": {},
                                    "labels": {
                                        "vda1": [
                                            "cloudimg-rootfs"
                                        ]
                                    },
                                    "masters": {},
                                    "uuids": {
                                        "vda1": [
                                            "e67f2040-b784-4d61-8c5c-c754d190334e"
                                        ]
                                    }
                                },
                                "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": [
                                                        "e67f2040-b784-4d61-8c5c-c754d190334e"
                                                    ]
                                                },
                                                "sectors": "20969439",
                                                "sectorsize": 512,
                                                "size": "10.00 GB",
                                                "start": "2048",
                                                "uuid": "e67f2040-b784-4d61-8c5c-c754d190334e"
                                            }
                                        },
                                        "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": "14",
                                "ansible_distribution_release": "bookworm",
                                "ansible_distribution_version": "12.14",
                                "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.7.210",
                                        "broadcast": "10.128.7.255",
                                        "netmask": "255.255.255.0",
                                        "network": "10.128.7.0",
                                        "prefix": "24"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "2a13:1a81:8000:3124:f816:3eff:fe96:467",
                                            "prefix": "64",
                                            "scope": "global"
                                        },
                                        {
                                            "address": "fe80::f816:3eff:fe96:467",
                                            "prefix": "64",
                                            "scope": "link"
                                        }
                                    ],
                                    "macaddress": "fa:16:3e:96:04:67",
                                    "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 37410 22",
                                    "SSH_CONNECTION": "2a13:1a81:8000:2::38d 37410 2a13:1a81:8000:3124:f816:3eff:fe96:467 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-49-amd64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26)",
                                "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.01806640625
                                },
                                "ansible_local": {},
                                "ansible_locally_reachable_ips": {
                                    "ipv4": [
                                        "10.128.7.210",
                                        "127.0.0.0/8",
                                        "127.0.0.1"
                                    ],
                                    "ipv6": [
                                        "::1",
                                        "2a13:1a81:8000:3124:f816:3eff:fe96:467",
                                        "fe80::f816:3eff:fe96:467"
                                    ]
                                },
                                "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": "f17f27b6e5b5400bb2228e7619b85a84",
                                "ansible_memfree_mb": 3674,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 3760,
                                        "used": 153
                                    },
                                    "real": {
                                        "free": 3674,
                                        "total": 3913,
                                        "used": 239
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 3913,
                                "ansible_mounts": [
                                    {
                                        "block_available": 1944089,
                                        "block_size": 4096,
                                        "block_total": 2443542,
                                        "block_used": 499453,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 2494832,
                                        "inode_total": 2531088,
                                        "inode_used": 36256,
                                        "mount": "/",
                                        "options": "rw,relatime",
                                        "size_available": 7962988544,
                                        "size_total": 10008748032,
                                        "uuid": "e67f2040-b784-4d61-8c5c-c754d190334e"
                                    }
                                ],
                                "ansible_nodename": "debian",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-6.1.0-49-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": "AAAAB3NzaC1kc3MAAACBAJXRz2QyPAz2JwdmrU0WxikwoPGIHgNP5PCaL2ek78uLssSyfhcgJEz7vVlO/M/b0mOqcMcR+VHTjEaISpn9zYQ7Wz5i0T9pLNx2UG8Kng9ZDqHVSjo1EFS/fHh3FF4oSyGr7zumauCmBv9VsNIQgDujDQ0iNibGa3kJN1IGJG8TAAAAFQC9m3611kWRpa0nlyC/WL2XBe6slwAAAIAtR7xmOY3qbgCA51b1Eo/nrf1szoDwB+zz9N22neV1gEUjYq7xjDXnG9d1SAdWiongJpeXC3CnZvL+nXlzrF7E3Kya7v98vY2yMMW48igVRGz13OiwzJk/QVUHEUhjs0Y2lQQz7igZwo7CUzvdXtzq3OG3E2ri2JiyemLuC/Y0SgAAAIAdHiZ5lS8HYdT7QlAQG6VETmgUaYgCdXI5uZ6N7PvBXrX1AI+sn/OdigBbAkF7Ai1AaXlQMZcAUdOVmGXh0nTpqNpA3HOYTPhGt+D8oG3BdpMbpBs8QQPT4JWWrn61fUjHFFGDYRkiht2LzEvMHsRiRJAvQ2FkWO+ZL+ecsYerFg==",
                                "ansible_ssh_host_key_dsa_public_keytype": "ssh-dss",
                                "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIkRMtVZjuhZbM/rUIVGN8zZJzcdtt58IX8i2R2u10IOLOipdXB0CqSvOEh0ATTTi5qwTfY8vDIyNBu6zMY3uXo=",
                                "ansible_ssh_host_key_ecdsa_public_keytype": "ecdsa-sha2-nistp256",
                                "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIMhbZg1r2KH9j2H9HiwAvSSn6duDM2mUAlR021ShVmfX",
                                "ansible_ssh_host_key_ed25519_public_keytype": "ssh-ed25519",
                                "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQC/C1Gi6qGAyp76FIuprTn9K6uer298wa3atiUoIa9FnvRQXAPJSMwYIyVCnDqK/PzLD3dgQOjxwZVXz1RhcCm99NJcHtNrYvIIyKEbaz/DClYufNGAreXyfxXYRDVw3YsIuEPdzZJKYIpfUdQBicU263qGVW/KTraWG0zK7iOGyiqS2Ib4Q5d+ih5tX41C63zqc3EGnLCeEs+K2PiNMOFjfx0JW0VXlWKccFsbEHw3aGS1iHAxTTZwlbRN3UhiSyRtqGVEEma/GEb4BmZ7tgniOrnGLsvBsQ7ybHH3hc5bi7FLQamO9MeVg98gSkedFi53fH4M0qOVlcPIIRtHxvJrbXnf3FtdLTjS3JavALep7l734eF3//2INS0ihUkydlfpuXEe+vpdIqBv+n46di6yb3+8LP2/NXIDom2Sj/Du6FiKoHpeD5JLQEHKRjB/KUw/CUcXS/4NwfpSRQ+DHIgK4P42OD1tdPPcsQtG+9mTOBAem5DI1lShUiPBopDZ/ck=",
                                "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": 402,
                                "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-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:29.693264Z",
                            "start": "2026-06-20T08:58:28.501650Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:29.877141Z",
                            "start": "2026-06-20T08:58:29.700906Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000027",
                        "name": "Sanitize hostname"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "6f0d7e65473ec50e0e8403aeba49e6fcfa77423d",
                            "dest": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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": "6f0d7e65473ec50e0e8403aeba49e6fcfa77423d",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/.ansible/tmp/ansible-tmp-1781945909.9266906-246-242296783458527/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "fa26e80f64730198025852d27c9fab21",
                            "mode": "0644",
                            "owner": "root",
                            "size": 13261,
                            "src": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/.ansible/tmp/ansible-tmp-1781945909.9266906-246-242296783458527/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:30.538719Z",
                            "start": "2026-06-20T08:58:29.881978Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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            495369   343  495026    1% /dev\ntmpfs           500890   458  500432    1% /run\n/dev/vda1      2531088 36256 2494832    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           9546  1505      7595  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:96:04:67 brd ff:ff:ff:ff:ff:ff\n    altname enp0s3\n    inet 10.128.7.210/24 brd 10.128.7.255 scope global dynamic ens3\n       valid_lft 42801sec preferred_lft 42801sec\n    inet6 2a13:1a81:8000:3124:f816:3eff:fe96:467/64 scope global dynamic mngtmpaddr \n       valid_lft forever preferred_lft forever\n    inet6 fe80::f816:3eff:fe96:467/64 scope link \n       valid_lft forever preferred_lft forever\n",
                            "network_neighbors": "10.128.7.1 dev ens3 lladdr fa:16:3e:ef:4b:9b 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.7.1 dev ens3 \n10.128.7.0/24 dev ens3 proto kernel scope link src 10.128.7.210 \n169.254.169.254 via 10.128.7.2 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 65309sec 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-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64 GNU/Linux\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:31.215926Z",
                            "start": "2026-06-20T08:58:30.555555Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-00000000002a",
                        "name": "Collect information about zuul worker"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "2b2ae60ed675c537711fce052d7ee4683daf51fd",
                            "dest": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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": "2b2ae60ed675c537711fce052d7ee4683daf51fd",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/.ansible/tmp/ansible-tmp-1781945911.2638354-285-235425554342643/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "e8386862da4ad1b4188633c83ce42124",
                            "mode": "0644",
                            "owner": "root",
                            "size": 2518,
                            "src": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/.ansible/tmp/ansible-tmp-1781945911.2638354-285-235425554342643/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:31.860854Z",
                            "start": "2026-06-20T08:58:31.222175Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-00000000002d",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:32.128849Z",
                            "start": "2026-06-20T08:58:31.870765Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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/e22e7d56dd89449dab535097492ba478/work/src '[zuul@2a13:1a81:8000:3124:f816:3eff:fe96:467]:.'",
                            "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:fe96:467]:.",
                                    "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/e22e7d56dd89449dab535097492ba478/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/openstack-flavor-manager/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.clouds.yml\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.flake8\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.gitignore\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.zuul.yaml\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/LICENSE\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/Pipfile\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/Pipfile.lock\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/README.md\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/clouds.yml.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/flavors.yaml\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/pyproject.toml\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/requirements.txt\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/secure.yml.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/test-requirements.txt\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/tox.ini\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/COMMIT_EDITMSG\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/FETCH_HEAD\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/HEAD\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/ORIG_HEAD\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/config\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/config.worktree\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/description\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/index\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/packed-refs\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/branches/\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/applypatch-msg.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/commit-msg.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/fsmonitor-watchman.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/post-update.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-applypatch.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-commit.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-merge-commit.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-push.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-rebase.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-receive.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/prepare-commit-msg.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/push-to-checkout.sample\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/update.sample\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/info/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/info/exclude\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/logs/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/logs/HEAD\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/01/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/01/fbfff62ad488f33d82b43afd9a780090d53cbf\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/14/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/14/5cdc478f5d87262f61e40de7405c4070f7d1f4\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/14/89824647e0c739efe8fc0a2c2b274f7fc38ccb\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/16/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/16/5ecc52d6c5edf1fa4db3093954e70dbddd13b8\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1b/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1b/47b4f804d16b287eaf54820f0595fb7596ce9f\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1f/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1f/92df520ab19bd838b42ea76826e09739ee8517\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/38/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/38/6cf8f18c7b4f1ff9feef9f0696cdc209c5e5cd\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/3c/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/3c/86c8d2d576bd3d941dd5823ef65de4e456d560\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/41/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/41/1f5407ada5ef6c969f714b932a30402aeb6b37\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/47/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/47/9fd70e3579f06f2851ac77fb172f3297bfbd99\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4a/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4a/ca6e5a63fd15055cd7371474f30bca883b153b\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4d/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4d/8bdaa205b39122054355bbf587045556e91d62\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4e/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4e/3fe15a76cb3574650a16b27c07c9756e49d686\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/51/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/51/f72049c6a5f7b931ebfd1ea22c5331c1b87d02\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/57/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/57/b188f04b70f5a009d92781775606fdb4715e57\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/62/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/62/6b1d3b8931e8e3a58410ff2c5fa9310ac36a54\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/64/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/64/bfe864669bf7aa992b7e4526cda7ac326d760c\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/67/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/67/70bba1ab9925b603b027cfe34b3e76a304b92a\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/69/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/69/329ec425a1c621102f0c0f7745acdadcdfa4a0\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6c/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6c/cbbecb9771e5daab92329ad931f1acfa7395d1\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6d/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6d/6fbd526e34f49c1780b90cf7f2ac295973a06c\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6f/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6f/7d84efb4847c0e88765c16b3a4731f00b4901d\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/70/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/70/8bde41d72f498b26acf513e17f72312c0bbb8c\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/71/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/71/fa08c1d74f59e6661a71a8d8b654912241b800\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/77/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/77/a7152c19718177dcf2a61809fdcfcf5514fe15\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/7a/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/7a/2ba51a69a79c49cf8bc706aa75cef242322f13\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/88/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/88/091e88b74153fdbec42fe26ab2c7c85d5b030b\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/89/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/89/ec3830867c0386f0dd60b334f9631757f90598\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/8a/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/8a/80006e2e29f8e1a2e238f5ac080d2e52d8e509\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/96/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/96/68a92552e70430c25021ac9deb261e3daaf66b\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a0/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a0/682cb60253857d0f47aeb3bb5b3177dac5de97\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a2/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a2/d399315b15128acbb49aca45cdea533ea908a2\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a8/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a8/6f19a05b7ad9586bd91449607581e8dd389cca\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ab/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ab/41b55117082a7afc160204c73bc9a70515e283\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/af/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/af/737a173f2fbda7d5fd9674d36796ae9245001f\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b0/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b0/1e9e1756e1a547aa18a6ec8491d4662c26b1d4\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b7/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b7/512523421f612e90b97d04e7abca587ccd2c5a\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b9/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b9/48ed74d4481fd7eaef31ed18e74bb75f48f8a4\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cd/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cd/5a98bc25b3c61b01771907d70f33827531080f\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cf/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cf/3f6018f3a29d858bc766f684848e7a0f171620\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d0/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d0/aab15c5e0b852c3b96a6f2c6529a93f02e1538\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d6/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d6/b4ee7e343c59592ca95d36a847b3cb7c8db04e\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d9/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d9/a99f6a1fa391fa84f1c141ec608d3015629ed3\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/df/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/df/e9817555130b69dc56f321ccc4cedcc2ee3b88\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/e4/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/e4/341f977d76d71dd668f65dace7c8388c29a173\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ea/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ea/86982ef51f20c6b3d8b064b5efb5ee0e6bedd3\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/eb/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/eb/06e627d77d1fa4a8a5b93c5366ed85b4fe3c8a\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/f3/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/f3/b84bf51ac6fcfcf05a01e490377337d76ac798\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fa/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fa/967c9ff891fe1a0fc0a9aa9d96bd57b34b1f71\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/26a70dc908bf349852f8fc54d3181cfad7fadb\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/54354a4b88382a10c52d20bfe78e12c60ff9d6\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/91dba3f8ba5cddf63a04170f8c67207e9c9fac\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fe/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fe/072cc220e04a8a8d0f5699bbc690cefb43cb9e\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/info/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/info/commit-graph\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/info/packs\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-5811353b97b97a3e9f67f28149320c70c432b2c8.idx\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-5811353b97b97a3e9f67f28149320c70c432b2c8.pack\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-7ae73a00be48d5ea52328721a28de713454e788c.idx\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-7ae73a00be48d5ea52328721a28de713454e788c.pack\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-be031d4b3353fb4b4c67d1645b4677e76a79f3b0.idx\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-be031d4b3353fb4b4c67d1645b4677e76a79f3b0.pack\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/heads/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/heads/main\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/remotes/\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/remotes/origin/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/remotes/origin/main\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/zuul/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/zuul/fetch\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.github/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.github/renovate.json\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/.github/workflows/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/.github/workflows/add-to-project.yml\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/README.md\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/flavor_generator.py\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/requirements.md\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/rules.yaml\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/openstack_flavor_manager/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/openstack_flavor_manager/__init__.py\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/openstack_flavor_manager/main.py\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/playbooks/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/playbooks/integration-test.yml\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/playbooks/pre-integration-test.yml\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/test/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/__init__.py\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/test/integration/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/integration/__init__.py\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/integration/test.py\ncd+++++++++ src/github.com/osism/openstack-flavor-manager/test/unit/\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/unit/__init__.py\n<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/unit/test.py\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ src/",
                                "cd+++++++++ src/github.com/",
                                "cd+++++++++ src/github.com/osism/",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.clouds.yml",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.flake8",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.gitignore",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.zuul.yaml",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/LICENSE",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/Pipfile",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/Pipfile.lock",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/README.md",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/clouds.yml.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/flavors.yaml",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/pyproject.toml",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/requirements.txt",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/secure.yml.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/test-requirements.txt",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/tox.ini",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/COMMIT_EDITMSG",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/FETCH_HEAD",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/HEAD",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/ORIG_HEAD",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/config",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/config.worktree",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/description",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/index",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/packed-refs",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/branches/",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/applypatch-msg.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/fsmonitor-watchman.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/post-update.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-applypatch.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-commit.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-merge-commit.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-push.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-rebase.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/pre-receive.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/prepare-commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/push-to-checkout.sample",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/hooks/update.sample",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/info/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/info/exclude",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/logs/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/logs/HEAD",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/01/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/01/fbfff62ad488f33d82b43afd9a780090d53cbf",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/14/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/14/5cdc478f5d87262f61e40de7405c4070f7d1f4",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/14/89824647e0c739efe8fc0a2c2b274f7fc38ccb",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/16/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/16/5ecc52d6c5edf1fa4db3093954e70dbddd13b8",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1b/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1b/47b4f804d16b287eaf54820f0595fb7596ce9f",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1f/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/1f/92df520ab19bd838b42ea76826e09739ee8517",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/38/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/38/6cf8f18c7b4f1ff9feef9f0696cdc209c5e5cd",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/3c/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/3c/86c8d2d576bd3d941dd5823ef65de4e456d560",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/41/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/41/1f5407ada5ef6c969f714b932a30402aeb6b37",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/47/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/47/9fd70e3579f06f2851ac77fb172f3297bfbd99",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4a/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4a/ca6e5a63fd15055cd7371474f30bca883b153b",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4d/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4d/8bdaa205b39122054355bbf587045556e91d62",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4e/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/4e/3fe15a76cb3574650a16b27c07c9756e49d686",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/51/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/51/f72049c6a5f7b931ebfd1ea22c5331c1b87d02",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/57/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/57/b188f04b70f5a009d92781775606fdb4715e57",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/62/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/62/6b1d3b8931e8e3a58410ff2c5fa9310ac36a54",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/64/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/64/bfe864669bf7aa992b7e4526cda7ac326d760c",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/67/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/67/70bba1ab9925b603b027cfe34b3e76a304b92a",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/69/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/69/329ec425a1c621102f0c0f7745acdadcdfa4a0",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6c/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6c/cbbecb9771e5daab92329ad931f1acfa7395d1",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6d/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6d/6fbd526e34f49c1780b90cf7f2ac295973a06c",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6f/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/6f/7d84efb4847c0e88765c16b3a4731f00b4901d",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/70/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/70/8bde41d72f498b26acf513e17f72312c0bbb8c",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/71/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/71/fa08c1d74f59e6661a71a8d8b654912241b800",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/77/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/77/a7152c19718177dcf2a61809fdcfcf5514fe15",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/7a/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/7a/2ba51a69a79c49cf8bc706aa75cef242322f13",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/88/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/88/091e88b74153fdbec42fe26ab2c7c85d5b030b",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/89/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/89/ec3830867c0386f0dd60b334f9631757f90598",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/8a/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/8a/80006e2e29f8e1a2e238f5ac080d2e52d8e509",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/96/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/96/68a92552e70430c25021ac9deb261e3daaf66b",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a0/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a0/682cb60253857d0f47aeb3bb5b3177dac5de97",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a2/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a2/d399315b15128acbb49aca45cdea533ea908a2",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a8/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/a8/6f19a05b7ad9586bd91449607581e8dd389cca",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ab/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ab/41b55117082a7afc160204c73bc9a70515e283",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/af/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/af/737a173f2fbda7d5fd9674d36796ae9245001f",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b0/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b0/1e9e1756e1a547aa18a6ec8491d4662c26b1d4",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b7/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b7/512523421f612e90b97d04e7abca587ccd2c5a",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b9/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/b9/48ed74d4481fd7eaef31ed18e74bb75f48f8a4",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cd/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cd/5a98bc25b3c61b01771907d70f33827531080f",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cf/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/cf/3f6018f3a29d858bc766f684848e7a0f171620",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d0/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d0/aab15c5e0b852c3b96a6f2c6529a93f02e1538",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d6/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d6/b4ee7e343c59592ca95d36a847b3cb7c8db04e",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d9/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/d9/a99f6a1fa391fa84f1c141ec608d3015629ed3",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/df/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/df/e9817555130b69dc56f321ccc4cedcc2ee3b88",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/e4/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/e4/341f977d76d71dd668f65dace7c8388c29a173",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ea/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/ea/86982ef51f20c6b3d8b064b5efb5ee0e6bedd3",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/eb/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/eb/06e627d77d1fa4a8a5b93c5366ed85b4fe3c8a",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/f3/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/f3/b84bf51ac6fcfcf05a01e490377337d76ac798",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fa/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fa/967c9ff891fe1a0fc0a9aa9d96bd57b34b1f71",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/26a70dc908bf349852f8fc54d3181cfad7fadb",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/54354a4b88382a10c52d20bfe78e12c60ff9d6",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fd/91dba3f8ba5cddf63a04170f8c67207e9c9fac",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fe/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/fe/072cc220e04a8a8d0f5699bbc690cefb43cb9e",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/info/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/info/commit-graph",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/info/packs",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-5811353b97b97a3e9f67f28149320c70c432b2c8.idx",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-5811353b97b97a3e9f67f28149320c70c432b2c8.pack",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-7ae73a00be48d5ea52328721a28de713454e788c.idx",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-7ae73a00be48d5ea52328721a28de713454e788c.pack",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-be031d4b3353fb4b4c67d1645b4677e76a79f3b0.idx",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/objects/pack/pack-be031d4b3353fb4b4c67d1645b4677e76a79f3b0.pack",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/heads/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/heads/main",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/remotes/",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/remotes/origin/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/remotes/origin/main",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/zuul/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.git/refs/zuul/fetch",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.github/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.github/renovate.json",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/.github/workflows/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/.github/workflows/add-to-project.yml",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/README.md",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/flavor_generator.py",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/requirements.md",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/contrib/rules.yaml",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/openstack_flavor_manager/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/openstack_flavor_manager/__init__.py",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/openstack_flavor_manager/main.py",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/playbooks/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/playbooks/integration-test.yml",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/playbooks/pre-integration-test.yml",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/test/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/__init__.py",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/test/integration/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/integration/__init__.py",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/integration/test.py",
                                "cd+++++++++ src/github.com/osism/openstack-flavor-manager/test/unit/",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/unit/__init__.py",
                                "<f+++++++++ src/github.com/osism/openstack-flavor-manager/test/unit/test.py"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-00000000002d",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:33.044971Z",
                            "start": "2026-06-20T08:58:32.135103Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-000000000032",
                        "name": "ensure-output-dirs-present",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/ensure-output-dirs-present"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:33.864119Z",
                            "start": "2026-06-20T08:58:33.065095Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:34.143341Z",
                            "start": "2026-06-20T08:58:33.877420Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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.064731",
                            "end": "2026-06-20 08:58:34.483846",
                            "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-85a5-db17-00000000003a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:58:34.419115",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-85a5-db17-00000000003a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:34.691403Z",
                            "start": "2026-06-20T08:58:34.167268Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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.126567",
                            "end": "2026-06-20 08:58:35.126454",
                            "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-85a5-db17-00000000003b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:58:34.999887",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-85a5-db17-00000000003b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:35.250179Z",
                            "start": "2026-06-20T08:58:34.736561Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:58:35.560951Z",
                            "start": "2026-06-20T08:58:35.267576Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-00000000003f",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j312148406208.927",
                            "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:28.422015",
                            "end": "2026-06-20 08:59:04.809921",
                            "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-85a5-db17-000000000040-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "results_file": "/home/zuul/.ansible_async/j312148406208.927",
                            "start": "2026-06-20 08:58:36.387906",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-85a5-db17-000000000040-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-85a5-db17-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:08.191107Z",
                            "start": "2026-06-20T08:58:35.572534Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:08.252164Z",
                            "start": "2026-06-20T08:59:08.195843Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-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-85a5-db17-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:08.311866Z",
                            "start": "2026-06-20T08:59:08.263443Z"
                        },
                        "id": "0242ac1f-6606-85a5-db17-000000000042",
                        "name": "Probe container network namespace (teardown)"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 12,
            "failures": 0,
            "ignored": 0,
            "ok": 32,
            "rescued": 0,
            "skipped": 5,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "1",
    "phase": "pre",
    "playbook": "github.com/osism/openstack-flavor-manager/playbooks/pre-integration-test.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-06-20T09:01:48.384313Z",
                    "start": "2026-06-20T08:59:09.221388Z"
                },
                "id": "0242ac1f-6606-15d3-3033-000000000002",
                "name": "Pre integration test play"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "ensure-pip"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:09.268167Z",
                            "start": "2026-06-20T08:59:09.238364Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000008",
                        "name": "Install pip"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "PYTHON2=0\nPYTHON3=1\n\n# Not all platforms install a `pip` when installing python\n# specific pip packages. We first check if pip$VERSION is\n# available and if not fallback to checking if just `pip`\n# is present.\nif [ \"$PYTHON2\" -eq \"1\" ] ; then\n    command -v pip2 || command -v pip || exit 1\n    python2 -m wheel --help || exit 1\nfi\nif [ \"$PYTHON3\" -eq \"1\" ] ; then\n    command -v pip3 || command -v pip || exit 1\n    python3 -m wheel --help || exit 1\nfi\n",
                            "delta": "0:00:00.008494",
                            "end": "2026-06-20 08:59:09.753197",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "PYTHON2=0\nPYTHON3=1\n\n# Not all platforms install a `pip` when installing python\n# specific pip packages. We first check if pip$VERSION is\n# available and if not fallback to checking if just `pip`\n# is present.\nif [ \"$PYTHON2\" -eq \"1\" ] ; then\n    command -v pip2 || command -v pip || exit 1\n    python2 -m wheel --help || exit 1\nfi\nif [ \"$PYTHON3\" -eq \"1\" ] ; then\n    command -v pip3 || command -v pip || exit 1\n    python3 -m wheel --help || exit 1\nfi\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-15d3-3033-00000000005e-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-06-20 08:59:09.744703",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-00000000005e-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:09.827934Z",
                            "start": "2026-06-20T08:59:09.315029Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000005e",
                        "name": "Check if pip is installed"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_distro_os",
                                    "include": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml",
                                    "include_args": {},
                                    "zj_distro_os": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:09.901625Z",
                            "start": "2026-06-20T08:59:09.842068Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000005f",
                        "name": "Install pip from packages"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "apt",
                            "cache_update_time": 1781945952,
                            "cache_updated": true,
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "only_upgrade": false,
                                    "package": null,
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": true,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:14.174208Z",
                            "start": "2026-06-20T08:59:09.921180Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000009b",
                        "name": "Update package lists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "cache_update_time": 1781945952,
                            "cache_updated": false,
                            "changed": true,
                            "diff": {},
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "name": [
                                        "python3-pip",
                                        "python3-setuptools",
                                        "python3-venv",
                                        "python3-wheel"
                                    ],
                                    "only_upgrade": false,
                                    "package": [
                                        "python3-pip",
                                        "python3-setuptools",
                                        "python3-venv",
                                        "python3-wheel"
                                    ],
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": null,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            },
                            "stderr": "debconf: delaying package configuration, since apt-utils is not installed\n",
                            "stderr_lines": [
                                "debconf: delaying package configuration, since apt-utils is not installed"
                            ],
                            "stdout": "Reading package lists...\nBuilding dependency tree...\nReading state information...\nSuggested packages:\n  python-setuptools-doc\nThe following NEW packages will be installed:\n  python3-pip python3-setuptools python3-wheel\n0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.\nNeed to get 1877 kB of archives.\nAfter this operation, 9567 kB of additional disk space will be used.\nGet:1 http://deb.debian.org/debian bookworm/main amd64 python3-setuptools all 66.1.1-1+deb12u2 [522 kB]\nGet:2 http://deb.debian.org/debian bookworm/main amd64 python3-wheel all 0.38.4-2 [30.8 kB]\nGet:3 http://deb.debian.org/debian bookworm/main amd64 python3-pip all 23.0.1+dfsg-1 [1325 kB]\nFetched 1877 kB in 0s (5047 kB/s)\nSelecting previously unselected package python3-setuptools.\r\n(Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 27768 files and directories currently installed.)\r\nPreparing to unpack .../python3-setuptools_66.1.1-1+deb12u2_all.deb ...\r\nUnpacking python3-setuptools (66.1.1-1+deb12u2) ...\r\nSelecting previously unselected package python3-wheel.\r\nPreparing to unpack .../python3-wheel_0.38.4-2_all.deb ...\r\nUnpacking python3-wheel (0.38.4-2) ...\r\nSelecting previously unselected package python3-pip.\r\nPreparing to unpack .../python3-pip_23.0.1+dfsg-1_all.deb ...\r\nUnpacking python3-pip (23.0.1+dfsg-1) ...\r\nSetting up python3-setuptools (66.1.1-1+deb12u2) ...\r\nSetting up python3-wheel (0.38.4-2) ...\r\nSetting up python3-pip (23.0.1+dfsg-1) ...\r\n",
                            "stdout_lines": [
                                "Reading package lists...",
                                "Building dependency tree...",
                                "Reading state information...",
                                "Suggested packages:",
                                "  python-setuptools-doc",
                                "The following NEW packages will be installed:",
                                "  python3-pip python3-setuptools python3-wheel",
                                "0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.",
                                "Need to get 1877 kB of archives.",
                                "After this operation, 9567 kB of additional disk space will be used.",
                                "Get:1 http://deb.debian.org/debian bookworm/main amd64 python3-setuptools all 66.1.1-1+deb12u2 [522 kB]",
                                "Get:2 http://deb.debian.org/debian bookworm/main amd64 python3-wheel all 0.38.4-2 [30.8 kB]",
                                "Get:3 http://deb.debian.org/debian bookworm/main amd64 python3-pip all 23.0.1+dfsg-1 [1325 kB]",
                                "Fetched 1877 kB in 0s (5047 kB/s)",
                                "Selecting previously unselected package python3-setuptools.",
                                "(Reading database ... ",
                                "(Reading database ... 5%",
                                "(Reading database ... 10%",
                                "(Reading database ... 15%",
                                "(Reading database ... 20%",
                                "(Reading database ... 25%",
                                "(Reading database ... 30%",
                                "(Reading database ... 35%",
                                "(Reading database ... 40%",
                                "(Reading database ... 45%",
                                "(Reading database ... 50%",
                                "(Reading database ... 55%",
                                "(Reading database ... 60%",
                                "(Reading database ... 65%",
                                "(Reading database ... 70%",
                                "(Reading database ... 75%",
                                "(Reading database ... 80%",
                                "(Reading database ... 85%",
                                "(Reading database ... 90%",
                                "(Reading database ... 95%",
                                "(Reading database ... 100%",
                                "(Reading database ... 27768 files and directories currently installed.)",
                                "Preparing to unpack .../python3-setuptools_66.1.1-1+deb12u2_all.deb ...",
                                "Unpacking python3-setuptools (66.1.1-1+deb12u2) ...",
                                "Selecting previously unselected package python3-wheel.",
                                "Preparing to unpack .../python3-wheel_0.38.4-2_all.deb ...",
                                "Unpacking python3-wheel (0.38.4-2) ...",
                                "Selecting previously unselected package python3-pip.",
                                "Preparing to unpack .../python3-pip_23.0.1+dfsg-1_all.deb ...",
                                "Unpacking python3-pip (23.0.1+dfsg-1) ...",
                                "Setting up python3-setuptools (66.1.1-1+deb12u2) ...",
                                "Setting up python3-wheel (0.38.4-2) ...",
                                "Setting up python3-pip (23.0.1+dfsg-1) ..."
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:19.423678Z",
                            "start": "2026-06-20T08:59:14.183450Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000009c",
                        "name": "Install Python 3 pip"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "ensure_pip_from_packages_with_python2",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:19.454444Z",
                            "start": "2026-06-20T08:59:19.429959Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000009d",
                        "name": "Install Python 2 pip"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "ansible_python.version.major == 2",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:19.486362Z",
                            "start": "2026-06-20T08:59:19.460418Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000064",
                        "name": "Ensure setuptools"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "python3",
                                "-m",
                                "ensurepip",
                                "--help"
                            ],
                            "delta": "0:00:00.091539",
                            "end": "2026-06-20 08:59:19.847859",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "python3 -m ensurepip --help",
                                    "_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-15d3-3033-000000000065-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:19.756320",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "usage: python -m ensurepip [-h] [--version] [-v] [-U] [--user] [--root ROOT]\n                           [--altinstall] [--default-pip]\n\noptions:\n  -h, --help     show this help message and exit\n  --version      Show the version of pip that is bundled with this Python.\n  -v, --verbose  Give more output. Option is additive, and can be used up to 3\n                 times.\n  -U, --upgrade  Upgrade pip and dependencies, even if already installed.\n  --user         Install using the user scheme.\n  --root ROOT    Install everything relative to this alternate root directory.\n  --altinstall   Make an alternate install, installing only the X.Y versioned\n                 scripts (Default: pipX, pipX.Y, easy_install-X.Y).\n  --default-pip  Make a default pip install, installing the unqualified pip\n                 and easy_install in addition to the versioned scripts.",
                            "stdout_lines": [
                                "usage: python -m ensurepip [-h] [--version] [-v] [-U] [--user] [--root ROOT]",
                                "                           [--altinstall] [--default-pip]",
                                "",
                                "options:",
                                "  -h, --help     show this help message and exit",
                                "  --version      Show the version of pip that is bundled with this Python.",
                                "  -v, --verbose  Give more output. Option is additive, and can be used up to 3",
                                "                 times.",
                                "  -U, --upgrade  Upgrade pip and dependencies, even if already installed.",
                                "  --user         Install using the user scheme.",
                                "  --root ROOT    Install everything relative to this alternate root directory.",
                                "  --altinstall   Make an alternate install, installing only the X.Y versioned",
                                "                 scripts (Default: pipX, pipX.Y, easy_install-X.Y).",
                                "  --default-pip  Make a default pip install, installing the unqualified pip",
                                "                 and easy_install in addition to the versioned scripts."
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000065-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:20.030281Z",
                            "start": "2026-06-20T08:59:19.513058Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000065",
                        "name": "Check for ensurepip module"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "_ensurepip_module.rc != 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:20.083172Z",
                            "start": "2026-06-20T08:59:20.043746Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000066",
                        "name": "Ensure python3-venv"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ensure_pip_from_upstream",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:20.130684Z",
                            "start": "2026-06-20T08:59:20.096266Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000067",
                        "name": "Install pip from source"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "command -v python3\n",
                            "delta": "0:00:00.008118",
                            "end": "2026-06-20 08:59:20.448865",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "command -v python3\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-15d3-3033-000000000068-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:20.440747",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/usr/bin/python3",
                            "stdout_lines": [
                                "/usr/bin/python3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000068-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:20.668423Z",
                            "start": "2026-06-20T08:59:20.157947Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000068",
                        "name": "Probe for venv python full path"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "_host_virtualenv": "/usr/bin/python3 -m venv"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:20.737477Z",
                            "start": "2026-06-20T08:59:20.682095Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000069",
                        "name": "Set host default"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "ensure_pip_virtualenv_command": "/usr/bin/python3 -m venv"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-00000000005c",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:20.820470Z",
                            "start": "2026-06-20T08:59:20.750389Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000006a",
                        "name": "Set ensure_pip_virtualenv_command"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "command -v tox /home/zuul/.local/tox/bin/tox || exit 1\n",
                            "delta": "0:00:00.008575",
                            "end": "2026-06-20 08:59:21.125977",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "command -v tox /home/zuul/.local/tox/bin/tox || exit 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-15d3-3033-000000000009-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-06-20 08:59:21.117402",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000009-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:21.362895Z",
                            "start": "2026-06-20T08:59:20.852925Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000009",
                        "name": "Check if tox is installed"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "tox_preinstalled.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:21.392976Z",
                            "start": "2026-06-20T08:59:21.368683Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000000a",
                        "name": "Export preinstalled tox_exectuable"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/usr/bin/python3",
                                "-m",
                                "venv",
                                "/home/zuul/.local/tox"
                            ],
                            "delta": "0:00:04.222740",
                            "end": "2026-06-20 08:59:25.931022",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/bin/python3 -m venv /home/zuul/.local/tox",
                                    "_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-15d3-3033-00000000000c-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:21.708282",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-00000000000c-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:25.990390Z",
                            "start": "2026-06-20T08:59:21.453712Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000000c",
                        "name": "Create local venv"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/pip",
                                "install",
                                "tox"
                            ],
                            "delta": "0:00:03.171203",
                            "end": "2026-06-20 08:59:29.501896",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/pip install tox",
                                    "_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-15d3-3033-00000000000d-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:26.330693",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Collecting tox\n  Downloading tox-4.55.1-py3-none-any.whl (215 kB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 215.4/215.4 kB 5.9 MB/s eta 0:00:00\nCollecting cachetools>=7.0.3\n  Downloading cachetools-7.1.4-py3-none-any.whl (16 kB)\nCollecting colorama>=0.4.6\n  Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\nCollecting filelock>=3.25\n  Downloading filelock-3.29.4-py3-none-any.whl (42 kB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 42.8/42.8 kB 6.1 MB/s eta 0:00:00\nCollecting packaging>=26\n  Downloading packaging-26.2-py3-none-any.whl (100 kB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.2/100.2 kB 12.4 MB/s eta 0:00:00\nCollecting platformdirs>=4.9.4\n  Downloading platformdirs-4.10.0-py3-none-any.whl (22 kB)\nCollecting pluggy>=1.6\n  Downloading pluggy-1.6.0-py3-none-any.whl (20 kB)\nCollecting pyproject-api>=1.10\n  Downloading pyproject_api-1.10.1-py3-none-any.whl (12 kB)\nCollecting python-discovery>=1.2.2\n  Downloading python_discovery-1.4.2-py3-none-any.whl (33 kB)\nCollecting tomli-w>=1.2\n  Downloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)\nCollecting virtualenv>=21.1\n  Downloading virtualenv-21.5.1-py3-none-any.whl (4.6 MB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 4.6/4.6 MB 20.3 MB/s eta 0:00:00\nCollecting distlib<1,>=0.3.7\n  Downloading distlib-0.4.3-py2.py3-none-any.whl (470 kB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 470.6/470.6 kB 25.7 MB/s eta 0:00:00\nInstalling collected packages: distlib, tomli-w, pluggy, platformdirs, packaging, filelock, colorama, cachetools, python-discovery, pyproject-api, virtualenv, tox\nSuccessfully installed cachetools-7.1.4 colorama-0.4.6 distlib-0.4.3 filelock-3.29.4 packaging-26.2 platformdirs-4.10.0 pluggy-1.6.0 pyproject-api-1.10.1 python-discovery-1.4.2 tomli-w-1.2.0 tox-4.55.1 virtualenv-21.5.1",
                            "stdout_lines": [
                                "Collecting tox",
                                "  Downloading tox-4.55.1-py3-none-any.whl (215 kB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 215.4/215.4 kB 5.9 MB/s eta 0:00:00",
                                "Collecting cachetools>=7.0.3",
                                "  Downloading cachetools-7.1.4-py3-none-any.whl (16 kB)",
                                "Collecting colorama>=0.4.6",
                                "  Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)",
                                "Collecting filelock>=3.25",
                                "  Downloading filelock-3.29.4-py3-none-any.whl (42 kB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 42.8/42.8 kB 6.1 MB/s eta 0:00:00",
                                "Collecting packaging>=26",
                                "  Downloading packaging-26.2-py3-none-any.whl (100 kB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.2/100.2 kB 12.4 MB/s eta 0:00:00",
                                "Collecting platformdirs>=4.9.4",
                                "  Downloading platformdirs-4.10.0-py3-none-any.whl (22 kB)",
                                "Collecting pluggy>=1.6",
                                "  Downloading pluggy-1.6.0-py3-none-any.whl (20 kB)",
                                "Collecting pyproject-api>=1.10",
                                "  Downloading pyproject_api-1.10.1-py3-none-any.whl (12 kB)",
                                "Collecting python-discovery>=1.2.2",
                                "  Downloading python_discovery-1.4.2-py3-none-any.whl (33 kB)",
                                "Collecting tomli-w>=1.2",
                                "  Downloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)",
                                "Collecting virtualenv>=21.1",
                                "  Downloading virtualenv-21.5.1-py3-none-any.whl (4.6 MB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 4.6/4.6 MB 20.3 MB/s eta 0:00:00",
                                "Collecting distlib<1,>=0.3.7",
                                "  Downloading distlib-0.4.3-py2.py3-none-any.whl (470 kB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 470.6/470.6 kB 25.7 MB/s eta 0:00:00",
                                "Installing collected packages: distlib, tomli-w, pluggy, platformdirs, packaging, filelock, colorama, cachetools, python-discovery, pyproject-api, virtualenv, tox",
                                "Successfully installed cachetools-7.1.4 colorama-0.4.6 distlib-0.4.3 filelock-3.29.4 packaging-26.2 platformdirs-4.10.0 pluggy-1.6.0 pyproject-api-1.10.1 python-discovery-1.4.2 tomli-w-1.2.0 tox-4.55.1 virtualenv-21.5.1"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-00000000000d-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:29.553924Z",
                            "start": "2026-06-20T08:59:26.038216Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000000d",
                        "name": "Install tox to local venv"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "tox_executable": "/home/zuul/.local/tox/bin/tox"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:29.613070Z",
                            "start": "2026-06-20T08:59:29.560904Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000000e",
                        "name": "Export installed tox_executable path"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "--version"
                            ],
                            "delta": "0:00:00.373737",
                            "end": "2026-06-20 08:59:30.280806",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox --version",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000010-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:29.907069",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "ROOT: No loadable tox.ini or setup.cfg or pyproject.toml or tox.toml found, assuming empty tox.ini at /home/zuul\n4.55.1 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py",
                            "stdout_lines": [
                                "ROOT: No loadable tox.ini or setup.cfg or pyproject.toml or tox.toml found, assuming empty tox.ini at /home/zuul",
                                "4.55.1 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000010-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.670148Z",
                            "start": "2026-06-20T08:59:29.650613Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000010",
                        "name": "Output tox version"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "false_condition": "ensure_global_symlinks",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000006",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.721090Z",
                            "start": "2026-06-20T08:59:30.693923Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000011",
                        "name": "Make global symlink"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.include_role",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "include_args": {
                                        "name": "{{ item }}"
                                    },
                                    "item": "ensure-python"
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "include_args": {
                                        "name": "{{ item }}"
                                    },
                                    "item": "ensure-pip"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000013",
                        "name": "devstack",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_1/github.com/osism/zuul-jobs/roles/devstack"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.788073Z",
                            "start": "2026-06-20T08:59:30.740011Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000015",
                        "name": "Install dependencies"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "assert",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.862115Z",
                            "start": "2026-06-20T08:59:30.827188Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000116",
                        "name": "Validate python_version value"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.918488Z",
                            "start": "2026-06-20T08:59:30.869498Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000118",
                        "name": "Install specified version of python interpreter and development files (DEB)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.950708Z",
                            "start": "2026-06-20T08:59:30.925299Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000119",
                        "name": "Pull in venv package"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:30.992851Z",
                            "start": "2026-06-20T08:59:30.957433Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000011b",
                        "name": "Set default RPM package name"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.037776Z",
                            "start": "2026-06-20T08:59:31.001676Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000011c",
                        "name": "Set RPM package name for CentOS/RHEL 9/10"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.089788Z",
                            "start": "2026-06-20T08:59:31.051105Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000011d",
                        "name": "Install RPM package"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "python_use_pyenv",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.131762Z",
                            "start": "2026-06-20T08:59:31.105705Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000011f",
                        "name": "Install python using pyenv"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "python_version is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000114",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.178928Z",
                            "start": "2026-06-20T08:59:31.142532Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000120",
                        "name": "Activate python using stow"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "PYTHON2=0\nPYTHON3=1\n\n# Not all platforms install a `pip` when installing python\n# specific pip packages. We first check if pip$VERSION is\n# available and if not fallback to checking if just `pip`\n# is present.\nif [ \"$PYTHON2\" -eq \"1\" ] ; then\n    command -v pip2 || command -v pip || exit 1\n    python2 -m wheel --help || exit 1\nfi\nif [ \"$PYTHON3\" -eq \"1\" ] ; then\n    command -v pip3 || command -v pip || exit 1\n    python3 -m wheel --help || exit 1\nfi\n",
                            "delta": "0:00:00.053621",
                            "end": "2026-06-20 08:59:31.565784",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "PYTHON2=0\nPYTHON3=1\n\n# Not all platforms install a `pip` when installing python\n# specific pip packages. We first check if pip$VERSION is\n# available and if not fallback to checking if just `pip`\n# is present.\nif [ \"$PYTHON2\" -eq \"1\" ] ; then\n    command -v pip2 || command -v pip || exit 1\n    python2 -m wheel --help || exit 1\nfi\nif [ \"$PYTHON3\" -eq \"1\" ] ; then\n    command -v pip3 || command -v pip || exit 1\n    python3 -m wheel --help || exit 1\nfi\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-15d3-3033-000000000145-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:31.512163",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/usr/bin/pip3\nusage: __main__.py [-h] {unpack,pack,convert,version,help} ...\n\npositional arguments:\n  {unpack,pack,convert,version,help}\n                        commands\n    unpack              Unpack wheel\n    pack                Repack wheel\n    convert             Convert egg or wininst to wheel\n    version             Print version and exit\n    help                Show this help\n\noptions:\n  -h, --help            show this help message and exit",
                            "stdout_lines": [
                                "/usr/bin/pip3",
                                "usage: __main__.py [-h] {unpack,pack,convert,version,help} ...",
                                "",
                                "positional arguments:",
                                "  {unpack,pack,convert,version,help}",
                                "                        commands",
                                "    unpack              Unpack wheel",
                                "    pack                Repack wheel",
                                "    convert             Convert egg or wininst to wheel",
                                "    version             Print version and exit",
                                "    help                Show this help",
                                "",
                                "options:",
                                "  -h, --help            show this help message and exit"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000145-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.743707Z",
                            "start": "2026-06-20T08:59:31.229278Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000145",
                        "name": "Check if pip is installed"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "msg": "All items skipped",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_distro_os",
                                    "changed": false,
                                    "false_condition": "pip_preinstalled.rc != 0",
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true,
                                    "zj_distro_os": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml"
                                }
                            ],
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.810191Z",
                            "start": "2026-06-20T08:59:31.762365Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000146",
                        "name": "Install pip from packages"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "ansible_python.version.major == 2",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:31.848229Z",
                            "start": "2026-06-20T08:59:31.821088Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000014b",
                        "name": "Ensure setuptools"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "python3",
                                "-m",
                                "ensurepip",
                                "--help"
                            ],
                            "delta": "0:00:00.074840",
                            "end": "2026-06-20 08:59:32.238990",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "python3 -m ensurepip --help",
                                    "_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-15d3-3033-00000000014c-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:32.164150",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "usage: python -m ensurepip [-h] [--version] [-v] [-U] [--user] [--root ROOT]\n                           [--altinstall] [--default-pip]\n\noptions:\n  -h, --help     show this help message and exit\n  --version      Show the version of pip that is bundled with this Python.\n  -v, --verbose  Give more output. Option is additive, and can be used up to 3\n                 times.\n  -U, --upgrade  Upgrade pip and dependencies, even if already installed.\n  --user         Install using the user scheme.\n  --root ROOT    Install everything relative to this alternate root directory.\n  --altinstall   Make an alternate install, installing only the X.Y versioned\n                 scripts (Default: pipX, pipX.Y, easy_install-X.Y).\n  --default-pip  Make a default pip install, installing the unqualified pip\n                 and easy_install in addition to the versioned scripts.",
                            "stdout_lines": [
                                "usage: python -m ensurepip [-h] [--version] [-v] [-U] [--user] [--root ROOT]",
                                "                           [--altinstall] [--default-pip]",
                                "",
                                "options:",
                                "  -h, --help     show this help message and exit",
                                "  --version      Show the version of pip that is bundled with this Python.",
                                "  -v, --verbose  Give more output. Option is additive, and can be used up to 3",
                                "                 times.",
                                "  -U, --upgrade  Upgrade pip and dependencies, even if already installed.",
                                "  --user         Install using the user scheme.",
                                "  --root ROOT    Install everything relative to this alternate root directory.",
                                "  --altinstall   Make an alternate install, installing only the X.Y versioned",
                                "                 scripts (Default: pipX, pipX.Y, easy_install-X.Y).",
                                "  --default-pip  Make a default pip install, installing the unqualified pip",
                                "                 and easy_install in addition to the versioned scripts."
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-00000000014c-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:32.404821Z",
                            "start": "2026-06-20T08:59:31.892881Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000014c",
                        "name": "Check for ensurepip module"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "changed": false,
                            "false_condition": "_ensurepip_module.rc != 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:32.506250Z",
                            "start": "2026-06-20T08:59:32.410724Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000014d",
                        "name": "Ensure python3-venv"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ensure_pip_from_upstream",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:32.568089Z",
                            "start": "2026-06-20T08:59:32.513088Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000014e",
                        "name": "Install pip from source"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "command -v python3\n",
                            "delta": "0:00:00.006155",
                            "end": "2026-06-20 08:59:32.887068",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "command -v python3\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-15d3-3033-00000000014f-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-06-20 08:59:32.880913",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/usr/bin/python3",
                            "stdout_lines": [
                                "/usr/bin/python3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-00000000014f-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:33.128160Z",
                            "start": "2026-06-20T08:59:32.617110Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-00000000014f",
                        "name": "Probe for venv python full path"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "_host_virtualenv": "/usr/bin/python3 -m venv"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:33.212410Z",
                            "start": "2026-06-20T08:59:33.134114Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000150",
                        "name": "Set host default"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "ensure_pip_virtualenv_command": "/usr/bin/python3 -m venv"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000143",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_3/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:33.290993Z",
                            "start": "2026-06-20T08:59:33.220239Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000151",
                        "name": "Set ensure_pip_virtualenv_command"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "group": 1000,
                                            "owner": 1000,
                                            "path": "/opt/stack",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "group": 0,
                                            "owner": 0,
                                            "path": "/opt/stack",
                                            "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": "zuul",
                                            "mode": "0755",
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": "zuul",
                                            "path": "/opt/stack",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "item": "/opt/stack",
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/opt/stack",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "group": 1000,
                                            "owner": 1000,
                                            "path": "/opt/stack/data",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "group": 0,
                                            "owner": 0,
                                            "path": "/opt/stack/data",
                                            "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": "zuul",
                                            "mode": "0755",
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": "zuul",
                                            "path": "/opt/stack/data",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "item": "/opt/stack/data",
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/opt/stack/data",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "group": 1000,
                                            "owner": 1000,
                                            "path": "/opt/stack/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "group": 0,
                                            "owner": 0,
                                            "path": "/opt/stack/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": "zuul",
                                            "mode": "0755",
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": "zuul",
                                            "path": "/opt/stack/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "item": "/opt/stack/logs",
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/opt/stack/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "group": 1000,
                                            "owner": 1000,
                                            "path": "/opt/stack/status",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "group": 0,
                                            "owner": 0,
                                            "path": "/opt/stack/status",
                                            "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": "zuul",
                                            "mode": "0755",
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": "zuul",
                                            "path": "/opt/stack/status",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "item": "/opt/stack/status",
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/opt/stack/status",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000013",
                        "name": "devstack",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_1/github.com/osism/zuul-jobs/roles/devstack"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T08:59:34.691991Z",
                            "start": "2026-06-20T08:59:33.303829Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000016",
                        "name": "Create /opt/stack directories"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "cmd": "set -o pipefail\nset -o xtrace\nset -e\n\n# NOTE: There is probably a better Zuul-like way to do this.\ngit clone --branch stable/2025.1 https://opendev.org/openstack/devstack.git\n\nsudo apt-get update\n\n# NOTE: https://github.com/EmilienM/devstack-action/blob/main/action.yaml\nsudo apt-get remove --purge -y \\\n    esl-erlang \\\n    mysql-* \\\n    postgresql* \\\n    python3-pyasn1-modules \\\n    python3-simplejson || true\nsudo rm -rf /var/lib/mysql\nsudo apt-get install -y --fix-missing \\\n    erlang \\\n    rabbitmq-server\n",
                            "delta": "0:02:12.817571",
                            "end": "2026-06-20 09:01:47.884550",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -o pipefail\nset -o xtrace\nset -e\n\n# NOTE: There is probably a better Zuul-like way to do this.\ngit clone --branch stable/2025.1 https://opendev.org/openstack/devstack.git\n\nsudo apt-get update\n\n# NOTE: https://github.com/EmilienM/devstack-action/blob/main/action.yaml\nsudo apt-get remove --purge -y \\\n    esl-erlang \\\n    mysql-* \\\n    postgresql* \\\n    python3-pyasn1-modules \\\n    python3-simplejson || true\nsudo rm -rf /var/lib/mysql\nsudo apt-get install -y --fix-missing \\\n    erlang \\\n    rabbitmq-server\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/openstack-flavor-manager",
                                    "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-15d3-3033-000000000017-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 128,
                            "start": "2026-06-20 08:59:35.066979",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "+ set -e\n+ git clone --branch stable/2025.1 https://opendev.org/openstack/devstack.git\nCloning into 'devstack'...\nfatal: unable to access 'https://opendev.org/openstack/devstack.git/': Failed to connect to opendev.org port 443 after 132719 ms: Couldn't connect to server",
                            "stdout_lines": [
                                "+ set -e",
                                "+ git clone --branch stable/2025.1 https://opendev.org/openstack/devstack.git",
                                "Cloning into 'devstack'...",
                                "fatal: unable to access 'https://opendev.org/openstack/devstack.git/': Failed to connect to opendev.org port 443 after 132719 ms: Couldn't connect to server"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15d3-3033-000000000017-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15d3-3033-000000000013",
                        "name": "devstack",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/untrusted/project_1/github.com/osism/zuul-jobs/roles/devstack"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:01:48.384313Z",
                            "start": "2026-06-20T08:59:34.784124Z"
                        },
                        "id": "0242ac1f-6606-15d3-3033-000000000017",
                        "name": "Run preparations"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 13,
            "failures": 1,
            "ignored": 0,
            "ok": 19,
            "rescued": 0,
            "skipped": 18,
            "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-06-20T09:02:36.619493Z",
                    "start": "2026-06-20T09:01:49.453137Z"
                },
                "id": "0242ac1f-6606-bc84-36cf-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-bc84-36cf-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:01:49.868846Z",
                            "start": "2026-06-20T09:01:49.467534Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-000000000009",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j695567523619.1636",
                            "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:25.156453",
                            "end": "2026-06-20 09:02:16.027670",
                            "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-bc84-36cf-00000000000a-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "results_file": "/home/zuul/.ansible_async/j695567523619.1636",
                            "start": "2026-06-20 09:01:50.871217",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-bc84-36cf-00000000000a-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:17.478694Z",
                            "start": "2026-06-20T09:01:49.881604Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-00000000000a",
                        "name": "Snapshot dual-stack network state (post)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j620981773654.1762",
                            "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.007749",
                            "end": "2026-06-20 09:02:18.125532",
                            "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-bc84-36cf-00000000000b-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results_file": "/home/zuul/.ansible_async/j620981773654.1762",
                            "start": "2026-06-20 09:02:18.117783",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-bc84-36cf-00000000000b-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:23.508177Z",
                            "start": "2026-06-20T09:02:17.488668Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-00000000000b",
                        "name": "Snapshot Docker/BuildKit IPv6 config (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j801300076936.1797",
                            "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.007221",
                            "end": "2026-06-20 09:02:24.264754",
                            "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-bc84-36cf-00000000000c-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results_file": "/home/zuul/.ansible_async/j801300076936.1797",
                            "start": "2026-06-20 09:02:24.257533",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-bc84-36cf-00000000000c-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:29.706664Z",
                            "start": "2026-06-20T09:02:23.515309Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-00000000000c",
                        "name": "Probe container network namespace (teardown)"
                    }
                },
                {
                    "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-bc84-36cf-00000000000e",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:29.846794Z",
                            "start": "2026-06-20T09:02:29.738566Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-000000000010",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-00000000000e",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:29.940978Z",
                            "start": "2026-06-20T09:02:29.854429Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-000000000011",
                        "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/e22e7d56dd89449dab535097492ba478/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-00000000000e",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:32.231149Z",
                            "start": "2026-06-20T09:02:29.958395Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-000000000012",
                        "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:fe96:467]:/home/zuul/zuul-output/logs/' /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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:fe96:467]:/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/e22e7d56dd89449dab535097492ba478/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:fe96:467]:/home/zuul/zuul-output/artifacts/' /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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:fe96:467]:/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/e22e7d56dd89449dab535097492ba478/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:fe96:467]:/home/zuul/zuul-output/docs/' /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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:fe96:467]:/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/e22e7d56dd89449dab535097492ba478/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-00000000000e",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:35.397976Z",
                            "start": "2026-06-20T09:02:32.239209Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-000000000014",
                        "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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/artifacts/* /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.010833",
                                    "end": "2026-06-20 09:02:36.241258",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/artifacts/* /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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-06-20 09:02:36.230425",
                                    "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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/docs/* /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007680",
                                    "end": "2026-06-20 09:02:36.590763",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/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/e22e7d56dd89449dab535097492ba478/work/docs/* /var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/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-06-20 09:02:36.583083",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bc84-36cf-000000000017",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:36.619493Z",
                            "start": "2026-06-20T09:02:35.418043Z"
                        },
                        "id": "0242ac1f-6606-bc84-36cf-000000000019",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 8,
            "rescued": 0,
            "skipped": 1,
            "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-06-20T09:02:38.081848Z",
                    "start": "2026-06-20T09:02:37.515691Z"
                },
                "id": "0242ac1f-6606-8045-6685-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQC1C75Tbd0szHnTtTtUq1PVxbJjMkVh0IeeC4RmF+UnmbsCDQVVm9SCi+1jWy7wZR0Q9vZOE10UVYmcMM4SyDv+fEidQj2fF/MRoqnL6HaXpWQNVSgjPC5WZlK3zZgqLxM7rw8Enp3c3UyFkRiAFXXmxO9Rzea4qWOlDYcA5hs21NN24ANqZp3+52MyLRSlxISF2nl6vPeN7mYegNNnn8g16WIj20vBn9zR2mRU6uE0LHItMhobmkCEfRcuOuN5Y4x9E9M4mGAfVy/Zu2CzX+cVCUtKhUGLf6TJACARD9+CkWBbj+sTigpirUMzGbzsxsGPigYT7asHMlBrB7PNXqUpr4RS/37UFW+6dA7jHS2hIM/Os0vBm1YBHGg7yDKBJ8yH224z86NF1l4kcLIO6A8wappNU+jjJ9gaCLH9UIGAEpQzqY6C/yzlrKA13sLu6Ga6lTpTGMwdqvBBPUvGYiULHNnJWA+gpvbCtdOKowQT1xXzkX7OuD0I5Z6n5V5EG5U= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQC1C75Tbd0szHnTtTtUq1PVxbJjMkVh0IeeC4RmF+UnmbsCDQVVm9SCi+1jWy7wZR0Q9vZOE10UVYmcMM4SyDv+fEidQj2fF/MRoqnL6HaXpWQNVSgjPC5WZlK3zZgqLxM7rw8Enp3c3UyFkRiAFXXmxO9Rzea4qWOlDYcA5hs21NN24ANqZp3+52MyLRSlxISF2nl6vPeN7mYegNNnn8g16WIj20vBn9zR2mRU6uE0LHItMhobmkCEfRcuOuN5Y4x9E9M4mGAfVy/Zu2CzX+cVCUtKhUGLf6TJACARD9+CkWBbj+sTigpirUMzGbzsxsGPigYT7asHMlBrB7PNXqUpr4RS/37UFW+6dA7jHS2hIM/Os0vBm1YBHGg7yDKBJ8yH224z86NF1l4kcLIO6A8wappNU+jjJ9gaCLH9UIGAEpQzqY6C/yzlrKA13sLu6Ga6lTpTGMwdqvBBPUvGYiULHNnJWA+gpvbCtdOKowQT1xXzkX7OuD0I5Z6n5V5EG5U= 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-8045-6685-000000000005",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/e22e7d56dd89449dab535097492ba478/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-06-20T09:02:38.081848Z",
                            "start": "2026-06-20T09:02:37.538291Z"
                        },
                        "id": "0242ac1f-6606-8045-6685-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
}
]
