[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/osism/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:42:20.567060Z",
                    "start": "2026-10-01T09:41:51.569113Z"
                },
                "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:51.613390Z",
                            "start": "2026-10-01T09:41:51.585834Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-00000000000f",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "47b/osism/47bab76beefc48d8a47ce77b76efac4d"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000c1",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:51.671931Z",
                            "start": "2026-10-01T09:41:51.642780Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000c3",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.14\nJob: cfg-cookiecutter-tox-2025.2\nPipeline: check\nExecutor: 521e9411259a\nTriggered by: https://github.com/osism/cfg-cookiecutter/pull/882\nEvent ID: d595d6f0-bd7b-11f1-9a4d-05903cb1cd52\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:51.722330Z",
                            "start": "2026-10-01T09:41:51.681625Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000010",
                        "name": "Print job information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": false,
                                    "failed": false,
                                    "msg": "# Node Information\nInventory Hostname: debian-bookworm\nHostname: debian\nUsername: zuul\nDistro: Debian 12.15\nProvider: regiocloud-a\nRegion: \nLabel: debian-bookworm\nProduct Name: OpenStack Nova\nInterface IP: 2a13:1a81:8000:3124:f816:3eff:fecf:5f95\n",
                                    "zj_item": "debian-bookworm"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000000d",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:51.820082Z",
                            "start": "2026-10-01T09:41:51.726302Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000011",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000014",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:52.398534Z",
                            "start": "2026-10-01T09:41:51.827922Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000016",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "9197c625d3f358513627bb9491f9dc66cc142947",
                            "dest": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "9197c625d3f358513627bb9491f9dc66cc142947",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/.ansible/tmp/ansible-tmp-1790847712.4633083-34-260046780062349/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "2df25a01d3dfbbf8bcbe738523e191cc",
                            "mode": "0644",
                            "owner": "root",
                            "size": 15583,
                            "src": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/.ansible/tmp/ansible-tmp-1790847712.4633083-34-260046780062349/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000014",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:53.527423Z",
                            "start": "2026-10-01T09:41:52.403802Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:53.877493Z",
                            "start": "2026-10-01T09:41:53.544930Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:53.930231Z",
                            "start": "2026-10-01T09:41:53.882211Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:01.496505",
                            "end": "2026-10-01 09:41:55.900989",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_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-77c7-0fe4-0000000000e4-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:41:54.404484",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa.pub\nThe key fingerprint is:\nSHA256:naJzdiybqq4cL9YdmdTaHzz11qAbjAformg5fMEEeIw zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|   +             |\n|  E +            |\n|   . . . .       |\n|      o o.... .  |\n|     + *S.o= o o |\n|      B.oo= = o .|\n|  .o oo++.o+ +   |\n| .oo*.o+.=. .    |\n| .o==+ooo        |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:naJzdiybqq4cL9YdmdTaHzz11qAbjAformg5fMEEeIw zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|   +             |",
                                "|  E +            |",
                                "|   . . . .       |",
                                "|      o o.... .  |",
                                "|     + *S.o= o o |",
                                "|      B.oo= = o .|",
                                "|  .o oo++.o+ +   |",
                                "| .oo*.o+.=. .    |",
                                "| .o==+ooo        |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac1f-6606-77c7-0fe4-0000000000e4-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:55.934012Z",
                            "start": "2026-10-01T09:41:53.947224Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000e4",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:55.958631Z",
                            "start": "2026-10-01T09:41:55.940696Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000e5",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:56.000474Z",
                            "start": "2026-10-01T09:41:55.977115Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000104",
                        "name": "Remove previously added zuul-build-sshkey"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDjvAaRPzidGqPXT9Ox4OPZSY6uNrli3J5VHF6KbwtVdN3KrFFNYhxWRfedU6ji6nhHTy6KHOJookxzG2APQ7wrn5Bb33ketCT7w5nWxJQf7TzqthIps+AfDVbxvdWAughEZ+IEB0gaJxsKUhyHg4Gd/e0B0DeT5E9Pr6prtvd0U7nTRAtDd90Qxqz7hhyQb7lnueCzKQxVocyx/h8ApGkuAT6DgIT8BTt8QIge8p6E2XwTkg28jb/WMblpkI2VejmR9x6SyfXNB/XEdezgu6DdYHm3SoStrgoWdMmOYCzaPhGlkLaThhEwE/IlmbPHMn8D6xJJ//kqOa9G58EMWK5uli0vyeRn93Da8WnkUAPU0+R/oGkdgU4W1un1O8zP8fAp+/uzLm1+rhP/EVk9/HOf4bVRvS9KJgkbZgSw1P7e1q98ZJo+FXYzbwzA9n6RvqwrudzFHxVjYZi+LJn4t6h0sy4KNL78WispxYr+FN67k13WPLZEezyIrbSrbuvdOZs= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDjvAaRPzidGqPXT9Ox4OPZSY6uNrli3J5VHF6KbwtVdN3KrFFNYhxWRfedU6ji6nhHTy6KHOJookxzG2APQ7wrn5Bb33ketCT7w5nWxJQf7TzqthIps+AfDVbxvdWAughEZ+IEB0gaJxsKUhyHg4Gd/e0B0DeT5E9Pr6prtvd0U7nTRAtDd90Qxqz7hhyQb7lnueCzKQxVocyx/h8ApGkuAT6DgIT8BTt8QIge8p6E2XwTkg28jb/WMblpkI2VejmR9x6SyfXNB/XEdezgu6DdYHm3SoStrgoWdMmOYCzaPhGlkLaThhEwE/IlmbPHMn8D6xJJ//kqOa9G58EMWK5uli0vyeRn93Da8WnkUAPU0+R/oGkdgU4W1un1O8zP8fAp+/uzLm1+rhP/EVk9/HOf4bVRvS9KJgkbZgSw1P7e1q98ZJo+FXYzbwzA9n6RvqwrudzFHxVjYZi+LJn4t6h0sy4KNL78WispxYr+FN67k13WPLZEezyIrbSrbuvdOZs= 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-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:56.658521Z",
                            "start": "2026-10-01T09:41:56.008623Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000105",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/.ssh"
                                },
                                "before": {
                                    "path": "/home/zuul/.ssh"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 448,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/.ssh",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0700",
                            "owner": "zuul",
                            "path": "/home/zuul/.ssh",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:56.954805Z",
                            "start": "2026-10-01T09:41:56.664143Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000106",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "1189c1422ae896f9b0ce52775065342dfa7ad2e6",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "47bab76beefc48d8a47ce77b76efac4d_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "1189c1422ae896f9b0ce52775065342dfa7ad2e6",
                                    "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-1790847717.0276816-139-94652487132518/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "b696f2f662df44fe1c91bd2c5158ef2e",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1790847717.0276816-139-94652487132518/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:57.601497Z",
                            "start": "2026-10-01T09:41:56.958986Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000107",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "53202c3d3490afb6e57a164e95e4bf68fde7ee7e",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "47bab76beefc48d8a47ce77b76efac4d_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "53202c3d3490afb6e57a164e95e4bf68fde7ee7e",
                                    "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-1790847717.638772-149-136700289477661/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "5cdc831cdb82fdb6ea17a8a68d28c69b",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1790847717.638772-149-136700289477661/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:58.302443Z",
                            "start": "2026-10-01T09:41:57.605583Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000108",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:58.354411Z",
                            "start": "2026-10-01T09:41:58.306552Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000e6",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/var/ssh/nodepool"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000eb",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:59.047511Z",
                            "start": "2026-10-01T09:41:58.359399Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000ed",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa"
                            ],
                            "delta": "0:00:00.012152",
                            "end": "2026-10-01 09:41:59.600132",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_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-77c7-0fe4-0000000000f3-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:41:59.587980",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/47bab76beefc48d8a47ce77b76efac4d_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-77c7-0fe4-0000000000f3-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:41:59.689711Z",
                            "start": "2026-10-01T09:41:59.055910Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000f3",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:00.220621Z",
                            "start": "2026-10-01T09:41:59.695709Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000f4",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000019",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:00.263057Z",
                            "start": "2026-10-01T09:42:00.229944Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-0000000000f5",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000001e",
                        "name": "start-zuul-console",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/start-zuul-console"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:00.907254Z",
                            "start": "2026-10-01T09:42:00.272778Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000020",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_info_dir": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/zuul-info"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:00.971586Z",
                            "start": "2026-10-01T09:42:00.918828Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000024",
                        "name": "Define zuul_info_dir fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/zuul-info"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:01.637775Z",
                            "start": "2026-10-01T09:42:00.975746Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000025",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "setup",
                            "ansible_facts": {
                                "ansible_all_ipv4_addresses": [
                                    "10.128.0.100"
                                ],
                                "ansible_all_ipv6_addresses": [
                                    "2a13:1a81:8000:3124:f816:3eff:fecf:5f95",
                                    "fe80::f816:3eff:fecf:5f95"
                                ],
                                "ansible_apparmor": {
                                    "status": "enabled"
                                },
                                "ansible_architecture": "x86_64",
                                "ansible_bios_date": "04/01/2014",
                                "ansible_bios_vendor": "SeaBIOS",
                                "ansible_bios_version": "1.15.0-1",
                                "ansible_board_asset_tag": "NA",
                                "ansible_board_name": "NA",
                                "ansible_board_serial": "NA",
                                "ansible_board_vendor": "NA",
                                "ansible_board_version": "NA",
                                "ansible_chassis_asset_tag": "NA",
                                "ansible_chassis_serial": "NA",
                                "ansible_chassis_vendor": "QEMU",
                                "ansible_chassis_version": "pc-i440fx-6.2",
                                "ansible_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-6.1.0-53-amd64",
                                    "console": "ttyS0,115200",
                                    "gfxpayload": "text",
                                    "no_timer_check": true,
                                    "nofb": true,
                                    "nomodeset": true,
                                    "ro": true,
                                    "root": "LABEL=cloudimg-rootfs"
                                },
                                "ansible_date_time": {
                                    "date": "2026-10-01",
                                    "day": "01",
                                    "epoch": "1790847722",
                                    "epoch_int": "1790847722",
                                    "hour": "09",
                                    "iso8601": "2026-10-01T09:42:02Z",
                                    "iso8601_basic": "20261001T094202489426",
                                    "iso8601_basic_short": "20261001T094202",
                                    "iso8601_micro": "2026-10-01T09:42:02.489426Z",
                                    "minute": "42",
                                    "month": "10",
                                    "second": "02",
                                    "time": "09:42:02",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Thursday",
                                    "weekday_number": "4",
                                    "weeknumber": "39",
                                    "year": "2026"
                                },
                                "ansible_default_ipv4": {
                                    "address": "10.128.0.100",
                                    "alias": "ens3",
                                    "broadcast": "10.128.0.111",
                                    "gateway": "10.128.0.97",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:cf:5f:95",
                                    "mtu": 1500,
                                    "netmask": "255.255.255.240",
                                    "network": "10.128.0.96",
                                    "prefix": "28",
                                    "type": "ether"
                                },
                                "ansible_default_ipv6": {
                                    "address": "2a13:1a81:8000:3124:f816:3eff:fecf:5f95",
                                    "gateway": "fe80::f816:3eff:fe92:ad10",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:cf:5f:95",
                                    "mtu": 1500,
                                    "prefix": "64",
                                    "scope": "global",
                                    "type": "ether"
                                },
                                "ansible_device_links": {
                                    "ids": {},
                                    "labels": {
                                        "vda1": [
                                            "cloudimg-rootfs"
                                        ]
                                    },
                                    "masters": {},
                                    "uuids": {
                                        "vda1": [
                                            "d16ecd70-0017-467d-b632-565d5bd02e47"
                                        ]
                                    }
                                },
                                "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": [
                                                        "d16ecd70-0017-467d-b632-565d5bd02e47"
                                                    ]
                                                },
                                                "sectors": "20969439",
                                                "sectorsize": 512,
                                                "size": "10.00 GB",
                                                "start": "2048",
                                                "uuid": "d16ecd70-0017-467d-b632-565d5bd02e47"
                                            }
                                        },
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "20971520",
                                        "sectorsize": "512",
                                        "size": "10.00 GB",
                                        "support_discard": "512",
                                        "vendor": "0x1af4",
                                        "virtual": 1
                                    }
                                },
                                "ansible_distribution": "Debian",
                                "ansible_distribution_file_parsed": true,
                                "ansible_distribution_file_path": "/etc/os-release",
                                "ansible_distribution_file_variety": "Debian",
                                "ansible_distribution_major_version": "12",
                                "ansible_distribution_minor_version": "15",
                                "ansible_distribution_release": "bookworm",
                                "ansible_distribution_version": "12.15",
                                "ansible_dns": {
                                    "domain": "a.customers.regiocloud.tech.",
                                    "nameservers": [
                                        "81.163.194.9",
                                        "81.163.194.10"
                                    ],
                                    "search": [
                                        "a.customers.regiocloud.tech."
                                    ]
                                },
                                "ansible_domain": "",
                                "ansible_effective_group_id": 1000,
                                "ansible_effective_user_id": 1000,
                                "ansible_ens3": {
                                    "active": true,
                                    "device": "ens3",
                                    "ipv4": {
                                        "address": "10.128.0.100",
                                        "broadcast": "10.128.0.111",
                                        "netmask": "255.255.255.240",
                                        "network": "10.128.0.96",
                                        "prefix": "28"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "2a13:1a81:8000:3124:f816:3eff:fecf:5f95",
                                            "prefix": "64",
                                            "scope": "global"
                                        },
                                        {
                                            "address": "fe80::f816:3eff:fecf:5f95",
                                            "prefix": "64",
                                            "scope": "link"
                                        }
                                    ],
                                    "macaddress": "fa:16:3e:cf:5f:95",
                                    "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 40600 22",
                                    "SSH_CONNECTION": "2a13:1a81:8000:2::38d 40600 2a13:1a81:8000:3124:f816:3eff:fecf:5f95 22",
                                    "USER": "zuul",
                                    "XDG_RUNTIME_DIR": "/run/user/1000",
                                    "XDG_SESSION_CLASS": "user",
                                    "XDG_SESSION_ID": "1",
                                    "XDG_SESSION_TYPE": "tty",
                                    "_": "/bin/sh"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "Other",
                                "ansible_fqdn": "debian",
                                "ansible_hostname": "debian",
                                "ansible_hostnqn": "",
                                "ansible_interfaces": [
                                    "lo",
                                    "ens3"
                                ],
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "6.1.0-53-amd64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Debian 6.1.187-1 (2026-09-07)",
                                "ansible_lo": {
                                    "active": true,
                                    "device": "lo",
                                    "ipv4": {
                                        "address": "127.0.0.1",
                                        "broadcast": "",
                                        "netmask": "255.0.0.0",
                                        "network": "127.0.0.0",
                                        "prefix": "8"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "::1",
                                            "prefix": "128",
                                            "scope": "host"
                                        }
                                    ],
                                    "mtu": 65536,
                                    "promisc": false,
                                    "type": "loopback"
                                },
                                "ansible_loadavg": {
                                    "15m": 0.0029296875,
                                    "1m": 0.05126953125,
                                    "5m": 0.01416015625
                                },
                                "ansible_local": {},
                                "ansible_locally_reachable_ips": {
                                    "ipv4": [
                                        "10.128.0.100",
                                        "127.0.0.0/8",
                                        "127.0.0.1"
                                    ],
                                    "ipv6": [
                                        "::1",
                                        "2a13:1a81:8000:3124:f816:3eff:fecf:5f95",
                                        "fe80::f816:3eff:fecf:5f95"
                                    ]
                                },
                                "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": "129b51b706184589b9b5f4ee00a928b2",
                                "ansible_memfree_mb": 3655,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 3741,
                                        "used": 172
                                    },
                                    "real": {
                                        "free": 3655,
                                        "total": 3913,
                                        "used": 258
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 3913,
                                "ansible_mounts": [
                                    {
                                        "block_available": 1943697,
                                        "block_size": 4096,
                                        "block_total": 2443371,
                                        "block_used": 499674,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 2497370,
                                        "inode_total": 2533680,
                                        "inode_used": 36310,
                                        "mount": "/",
                                        "options": "rw,relatime",
                                        "size_available": 7961382912,
                                        "size_total": 10008047616,
                                        "uuid": "d16ecd70-0017-467d-b632-565d5bd02e47"
                                    }
                                ],
                                "ansible_nodename": "debian",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-6.1.0-53-amd64",
                                    "console": [
                                        "tty0",
                                        "ttyS0,115200"
                                    ],
                                    "gfxpayload": "text",
                                    "no_timer_check": true,
                                    "nofb": true,
                                    "nomodeset": true,
                                    "ro": true,
                                    "root": "LABEL=cloudimg-rootfs"
                                },
                                "ansible_processor": [
                                    "0",
                                    "GenuineIntel",
                                    "Intel Xeon Processor (Icelake)",
                                    "1",
                                    "GenuineIntel",
                                    "Intel Xeon Processor (Icelake)"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 2,
                                "ansible_processor_nproc": 2,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 2,
                                "ansible_product_name": "OpenStack Nova",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "29.2.1",
                                "ansible_python": {
                                    "executable": "/usr/bin/python3",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 2,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        2,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.2",
                                "ansible_real_group_id": 1000,
                                "ansible_real_user_id": 1000,
                                "ansible_selinux": {
                                    "status": "disabled"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "systemd",
                                "ansible_ssh_host_key_dsa_public": "AAAAB3NzaC1kc3MAAACBALtoF2f03O9StEAZpRYbp2Df4n4+hr2VQY6ncOc8eh4HBK3WWMWhJeqFuLdCrN5pbHusyng7NPmrIZv/QQRk12IYKLXuCBsy8XLIYKnF/m+Q84kIy9QQP1t/nwKS0xDfmOiZqZ2ahAeuAcDScY+yCAJjK4cHRHyn9ATg1T4Diaa1AAAAFQDR5Y7J1SthnoG9yEjmxg6yZn7S3QAAAIEAsoJWi9JWpV4MWvEUscNxqP0PDXFvfZFSzAya+ZjiIIqHJ18+01WpvsYORBTQR0e1d4cX+HkfMaewTMIEvCwlisQrqszlXjUve80hA84RP7frAYBr6wJOBzB/fSWiomcbOMKjirWb0IvMcQ6lcwgrtp+hEuotQvpKRbQJO3n3T94AAACADRESbiXNq/HQuCGwnf+ydz2Ceui4JXoVXxmGvQkGiJkgP0lh6jAAPNMzDOU+Fd4jdF7jHZ810MJu9rOWjiy1x0y9bGtp/XNdS1umLrE/8NcmHeTyMJAyOnqHE2tA4HjOeIoG5FYBkFMEBgWUn4CPJRe5eGIJo1D5deOiTR+C/YM=",
                                "ansible_ssh_host_key_dsa_public_keytype": "ssh-dss",
                                "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEchnaWhYutcqGEYCa852LHhQTFwwkBHcqMeo3w90EDX+5ukkdheZkujXoI3gc/qJNFOvGfGnNVRfwilqbdrVCg=",
                                "ansible_ssh_host_key_ecdsa_public_keytype": "ecdsa-sha2-nistp256",
                                "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIHiroQLlgvTa8RQPAWfvjMRngGHD0e5jcjxFyUkLBucP",
                                "ansible_ssh_host_key_ed25519_public_keytype": "ssh-ed25519",
                                "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQDBXTMt2tIYjs3iTaoBnWwDGS0c/v55wW99MyHNDEYIw8cfsjSwZz91cvT6kL8kPHUolvQ4T50WecHJMoBZl7KQteZ0R2H7uecgL9W01Re450Hv0CAU8f68S1BOX/LcXPKDRJamKtlfXwEVyk5g9nBW0ax2E1coRFTse1nklEGNskw9SShhZ2VbeJKGt01XNPTGrwojfj6ixgJmLzIiOLooJfrJkYLQyaIWBFGAT7xHKaVC9f0e5KRK2+wlomV/A8Kg0FvvLqgY8+4tbIhBKfU4WOsTbLlbOQXYlhIFvuqAQugSKhWWTbBWRFpszQ14KLn8DTDRr+jLeZREjh9izKfkp+nUOVLwYY+VqsqpfH3YtVNYVEA3pRjgwyLxfO8rxEQiM071PNTHrQt1DgSPF5SaS8PSbU/1AMZzqnAZpyRGL9Z7kaqTdjxx1QeQnLdvYO64xuFcCgZxD4WSkbaXGyhkSE+GEbscXl9URDcglT5Qlbw6/tJojM8ENJBkZD1KiSM=",
                                "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": 33,
                                "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-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:02.843180Z",
                            "start": "2026-10-01T09:42:01.645028Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:02.956741Z",
                            "start": "2026-10-01T09:42:02.848941Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000027",
                        "name": "Sanitize hostname"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "677071326cfd27e36615e70f654619d67a37ea26",
                            "dest": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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": "677071326cfd27e36615e70f654619d67a37ea26",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/.ansible/tmp/ansible-tmp-1790847723.0113177-246-27745344328868/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "c72227300f69da2008704cd2282e95ac",
                            "mode": "0644",
                            "owner": "root",
                            "size": 13294,
                            "src": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/.ansible/tmp/ansible-tmp-1790847723.0113177-246-27745344328868/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:03.807398Z",
                            "start": "2026-10-01T09:42:02.960198Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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            495370   343  495027    1% /dev\ntmpfs           500889   458  500431    1% /run\n/dev/vda1      2533680 36310 2497370    2% /\ntmpfs           500889     1  500888    1% /dev/shm\ntmpfs           500889     3  500886    1% /run/lock\ntmpfs           100177    20  100157    1% /run/user/1000\n",
                            "df_m": "Filesystem     1M-blocks  Used Available Use% Mounted on\nudev                1936     0      1936   0% /dev\ntmpfs                392     1       391   1% /run\n/dev/vda1           9545  1506      7593  17% /\ntmpfs               1957     0      1957   0% /dev/shm\ntmpfs                  5     0         5   0% /run/lock\ntmpfs                392     0       392   0% /run/user/1000\n",
                            "image_manifest_files": [],
                            "invocation": {
                                "module_args": {
                                    "image_manifest": null,
                                    "image_manifest_files": [
                                        "/etc/dib-builddate.txt",
                                        "/etc/image-hostname.txt"
                                    ],
                                    "ipv4_route_required": false,
                                    "ipv6_route_required": false,
                                    "traceroute_host": null
                                }
                            },
                            "network_interfaces": "1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n       valid_lft forever preferred_lft forever\n    inet6 ::1/128 scope host noprefixroute \n       valid_lft forever preferred_lft forever\n2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000\n    link/ether fa:16:3e:cf:5f:95 brd ff:ff:ff:ff:ff:ff\n    altname enp0s3\n    inet 10.128.0.100/28 brd 10.128.0.111 scope global dynamic ens3\n       valid_lft 43170sec preferred_lft 43170sec\n    inet6 2a13:1a81:8000:3124:f816:3eff:fecf:5f95/64 scope global dynamic mngtmpaddr \n       valid_lft forever preferred_lft forever\n    inet6 fe80::f816:3eff:fecf:5f95/64 scope link \n       valid_lft forever preferred_lft forever\n",
                            "network_neighbors": "10.128.0.97 dev ens3 lladdr fa:16:3e:90:1b:03 REACHABLE \nfe80::f816:3eff:fe92:ad10 dev ens3 lladdr fa:16:3e:92:ad:10 router REACHABLE \n",
                            "network_routing_v4": "default via 10.128.0.97 dev ens3 \n10.128.0.96/28 dev ens3 proto kernel scope link src 10.128.0.100 \n169.254.169.254 via 10.128.0.98 dev ens3 \n",
                            "network_routing_v6": "2a13:1a81:8000:3124::/64 dev ens3 proto kernel metric 256 pref medium\nfe80::/64 dev ens3 proto kernel metric 256 pref medium\ndefault via fe80::f816:3eff:fe92:ad10 dev ens3 proto ra metric 1024 expires 65505sec hoplimit 255 pref medium\n",
                            "proc_cpuinfo": "processor\t: 0\nvendor_id\t: GenuineIntel\ncpu family\t: 6\nmodel\t\t: 134\nmodel name\t: Intel Xeon Processor (Icelake)\nstepping\t: 0\nmicrocode\t: 0x1\ncpu MHz\t\t: 2299.998\ncache size\t: 16384 KB\nphysical id\t: 0\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 0\ninitial apicid\t: 0\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc pebs bts rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq dtes64 vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd arat avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq la57 rdpid fsrm md_clear arch_capabilities\nvmx flags\t: vnmi preemption_timer posted_intr invvpid ept_x_only ept_ad ept_1gb flexpriority apicv tsc_offset vtpr mtf vapic ept vpid unrestricted_guest vapic_reg vid shadow_vmcs\nbugs\t\t: spectre_v1 spectre_v2 spec_store_bypass swapgs taa mmio_stale_data rfds bhi ibpb_no_ret its\nbogomips\t: 4599.99\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 57 bits virtual\npower management:\n\nprocessor\t: 1\nvendor_id\t: GenuineIntel\ncpu family\t: 6\nmodel\t\t: 134\nmodel name\t: Intel Xeon Processor (Icelake)\nstepping\t: 0\nmicrocode\t: 0x1\ncpu MHz\t\t: 2299.998\ncache size\t: 16384 KB\nphysical id\t: 1\nsiblings\t: 1\ncore id\t\t: 0\ncpu cores\t: 1\napicid\t\t: 1\ninitial apicid\t: 1\nfpu\t\t: yes\nfpu_exception\t: yes\ncpuid level\t: 13\nwp\t\t: yes\nflags\t\t: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc pebs bts rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq dtes64 vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd arat avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq la57 rdpid fsrm md_clear arch_capabilities\nvmx flags\t: vnmi preemption_timer posted_intr invvpid ept_x_only ept_ad ept_1gb flexpriority apicv tsc_offset vtpr mtf vapic ept vpid unrestricted_guest vapic_reg vid shadow_vmcs\nbugs\t\t: spectre_v1 spectre_v2 spec_store_bypass swapgs taa mmio_stale_data rfds bhi ibpb_no_ret its\nbogomips\t: 4599.99\nclflush size\t: 64\ncache_alignment\t: 64\naddress sizes\t: 40 bits physical, 57 bits virtual\npower management:\n\n",
                            "traceroute": null,
                            "uname": "Linux debian 6.1.0-53-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.187-1 (2026-09-07) x86_64 GNU/Linux\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:04.183220Z",
                            "start": "2026-10-01T09:42:03.811623Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-00000000002a",
                        "name": "Collect information about zuul worker"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "1f59fa9b3c16032dd07db9445ed648ef25d9d175",
                            "dest": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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": "1f59fa9b3c16032dd07db9445ed648ef25d9d175",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/.ansible/tmp/ansible-tmp-1790847724.224744-285-243550849521698/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "36c88599fdd90a2cfc8a5bed1df5121c",
                            "mode": "0644",
                            "owner": "root",
                            "size": 2524,
                            "src": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/.ansible/tmp/ansible-tmp-1790847724.224744-285-243550849521698/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000022",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:04.774631Z",
                            "start": "2026-10-01T09:42:04.186725Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-00000000002d",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:05.042045Z",
                            "start": "2026-10-01T09:42:04.782276Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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/47bab76beefc48d8a47ce77b76efac4d/work/src '[zuul@2a13:1a81:8000:3124:f816:3eff:fecf:5f95]:.'",
                            "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:fecf:5f95]:.",
                                    "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/47bab76beefc48d8a47ce77b76efac4d/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/cfg-cookiecutter/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.ansible-lint\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.flake8\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.gitignore\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.yamllint.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.zuul.yaml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/Containerfile\ncL+++++++++ src/github.com/osism/cfg-cookiecutter/Dockerfile -> Containerfile\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/LICENSE\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/README.md\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/cookiecutter.json\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/cookiecutter.yml.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/entrypoint.sh\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/pyproject.toml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/requirements.txt\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/tox.ini\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/COMMIT_EDITMSG\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/FETCH_HEAD\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/HEAD\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/ORIG_HEAD\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/config\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/config.worktree\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/description\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/index\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/packed-refs\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/branches/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/applypatch-msg.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/commit-msg.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/fsmonitor-watchman.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/post-update.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-applypatch.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-commit.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-merge-commit.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-push.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-rebase.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-receive.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/prepare-commit-msg.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/push-to-checkout.sample\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/update.sample\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/info/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/info/exclude\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/logs/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/logs/HEAD\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/00/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/00/1cdc1d5753efa48e6b57c0e21d22cd9cb60e46\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/00/f76d1b16ccfe59280aa33f6cdcdfd10e3763d7\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/03/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/03/7f161e3175d26c68fbef600575f38774f41e6c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/04/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/04/c846e01efd47e528a4f233b9ea67dbc8dc065e\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/05/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/05/53aa4edc02264bb42f0c987db0ed7a2fd068e4\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/05/f9561bb72109a596a362ff5a65445ab5085168\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/3c4ea266919d72a448d90a3650acc5838e4618\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/620b2cd79de520e8431eac455d0c130669f8ac\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/901a07d3afd8b3a61445805a4926a2e880264c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/07/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/07/a2fd7268bb163fd2bf8f5b361441c38b5a32c0\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/08/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/08/d933a8c1b96653d0f1fbc93d1596e751c95f50\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0a/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0a/8f1b27d89d993b431b7ec314344454fb518256\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/42bcc040486aefca47d1ee5fd6b3e44619ce8d\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/6c97f394bca5bde47f0428e326c198d9692ae3\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/b97a16b583af1493dcc768633782cb654a20d0\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0d/2598b3f4815825a887ce8d14f364bce5b099b5\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0d/77c40ec14f47ded2a8f4252cac230ec87e5d85\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0e/a9dc3261393dac84f2218db9f6c3aa5c8438bf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0f/4d82321c4f53bc31762e32104d015efdcbb7c5\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/11/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/11/40e8ccf394014d65bd3599567ae3a88692bf7c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/11/ab761562dc86aae7ae343c0459f366ec0e873d\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/12/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/12/afaaaa7c62d6f24fc72c06eca2ddce989ca6e8\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/13/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/13/469734c0719f0a65917445822b965704ed39a9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/14/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/14/612bb5d578dafda7399f42eb891e6b1415508f\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/14/703b80962b83cacb2e51aca40d86b16e6187ff\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/15/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/15/77d9e7d47676ec5d346cfb063f44d0fe6797cc\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/15/868131f2e49ec787c7bb1958176bb1fd8d5248\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/18/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/18/34ce98ca3a597186e89c3c2f7ee344609413c3\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1a/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1a/05ba39e3126046ca16804ca852b986ad6414a3\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/4600a0df2bbac69098d8897aea69505478836c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/a11f5a9e29e06395b48b75b9d25fd8241189be\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/df63c42bb797e8642a7d3898b380f14d2b20f8\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1d/dc215aeb9db66f33cf2f7df33ad979467c9451\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1e/91a762b66cdca1d7b0d090755f72183337c1e6\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1e/d0b6f940be7df2082a0813cea29876f3572251\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1f/22a71bb40b7be2aab7016584f88d6f10edbd12\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1f/908a31b2a7ab044c6c28de4224fbbb5797c94b\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/23/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/23/473f0224c361f5e1ff1d40cafac5253d1b9e87\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/23/6e0fa7686207f9c29915e7a1275706955be548\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/25/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/25/5479e572c001cae882335b062615f83a4cac19\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/97217b04f90ac1240d0185f177757e039eedb2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/a6722adeb9fa36319782704b66e6ca1a1cdec1\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/f6ee3a9ef7d6e56be287592ab6ed9cf0581142\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/28/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/28/f5e2c56349d5b0cb121d74da322fe1306c01d2\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/29/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/29/f1e477969030f8e7509691ef32fff7c0324a1b\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2a/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2a/f38b8b7ed5fc2bf2c21a7a02b54cd69a4d9e1a\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2c/d4b00b9cec36a8a9c33ac24871529bda023268\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2d/b69acb5ab45368605e4616ab6860ed842fd2df\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2d/f46cb3bb9f0541be37ddf04b7699d48d7540ad\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/30/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/30/0720e90fb307b689053de1dcc6c0ac9b1a0fc0\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/30/18f8889d70cd36bc8f36c98db75c454525516c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/31/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/31/8d18def093ee142e3e54a660f5a1b9a9453077\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/33/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/33/7d9b47894328290eb4cd1789c8d8e44fe39411\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/35/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/35/3defc53e535976e1513a25356887f22a77ce37\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/35/83767fc06bad7fd89b90fe3219d49787132cb0\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/36/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/36/0f1f7b00f5e2d59f094c8d6c1f0cd7a63f9c1f\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/0669e3a898ccbeb3a3b30a0a5ea7b8226dd82a\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/1a1435666c9fb4896d0fa6868e8120c115448e\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/3cd416681ea684a182b19c8b58bcaadd8fa874\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3b/16feb1f0ad9e4bc70d7737f245ccf20f1f20df\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3c/f6204ad2267dadf364890781bcc7ca7efb6da9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/126067ab02e355a42685756d8a7adaed9b87c1\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/823604f5f7d74ac919869fd051b1288434d831\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/dd1aceddcc5d23134d9bcda72c3dd9fdf5708e\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3f/8821903dcc8e79f5d680b49111d53d640932a4\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/42/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/42/b27f1d911bd5606b2061fa798e60b8e8629586\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/43/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/43/5e5287ef9ae19f68f588d5ff6f233c2556196d\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/44/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/44/27b1c8c239688078ad970e36ee57926de2a027\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/45/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/45/cadf077a2882879bf685d40c97db4bdb88866b\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/47/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/47/38c85c741df3217d92080eba669becbe4d8b18\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/47/875ede883dc8df735291e4411784a33109cfe3\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/48/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/48/3d608a72c38dec06bc65634bcdf259d2cf4006\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/48/7c888959ce2e64e709ad5e627df176c5644f5c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/49/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/49/674642419ee8fee4ef82d187411ac2f9d1283c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/49/9da7cb4413fab38c600a93aa370d7a7f1ffe55\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4a/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4a/02ab469a4dcdac214bf5aa470df5ef1cf357a2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4a/b185a4255f36beee05b1f4ba31a90a0917f43c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4c/9a8197e2c195520436ba45167f20fccae75d46\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4d/648dc4e29113aced876736a4740f33af166282\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4d/b2c7e1c95d5a34951dc0174d5fffa8a1a9cadc\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4f/e357893cdd14edb30e6b557a58517750d0a439\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/50/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/50/9167ce7dc7fe2b47df7ad1b642e92978df9de9\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/50/ecf066e73bbb475f3d515159ef86d76a4c0b05\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/52/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/52/b4dff5982a6db156edccf9309915bac20b2ade\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/53/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/53/762337c31ff6211330e3428c1e8156be001335\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/54/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/54/7145c7064e90197757264f450f9a71d6186a9c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/55/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/55/2d739e553d6d1e4091f890b563acc599e5008b\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/55/60118a9dc5a2a813d27b37470dc79a928df1b4\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/56/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/56/e242c1b765c83683ed5115659ea730302198a1\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/57/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/57/88c7a3fb605445e6fd07c714d0a48ff001216a\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/57/90cc4d43ca516f5db5080b04ae213b32a4f0f5\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/58/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/58/bd6a2ee3aeabf07c644c4ba6e7e76ceeea1f65\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5a/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5a/d3b2a1455b6e89208ec5293ecad8fbafef8037\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5a/f4bf2bd9b4291e02d5e140515057cd50f1641f\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5b/2c9ea22cd2cfe452c4318d9fe91154efa7a484\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5b/512df33de2e53127273fd4a1dbaf7df5a92eeb\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5e/585f2976a4fcc4b2c1c38f3dd22a91de41f261\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5e/8df8ca42993288804f69af4be2379e91dcb037\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/52b94104bff62ea3a0263dd2b67785bd43a096\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/837566a6d44ee1e3a279e8f28e67adf4246c75\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/aaf00b428b47cde385985068eaaa823a916422\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/60/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/60/4258793dbfa323d21377018dee3ee2dca5ac95\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/166322b32f6e63413d30fb7ba3cdbb9908b9b1\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/b58266d30368b319e8522fac508a1ca3ed44a6\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/efbfab324b6ba274ce7ad7ca1578d8513af5c9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/63/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/63/87cbbe8554d2fd9bd7f501132513fbdcfa80f9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/65/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/65/f20ec77535a1282c2ea4558f789a9d873f8e53\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/66/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/66/ca461b2e5821924a026adbf422f1ab0ca29155\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/68/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/68/63ba5419afd0fc76493da5241675124f37129a\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6b/060cdc2090aaf8aa92777362460546a1970126\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6b/ac89da65735c6fd015c4765a45fb7612025914\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6d/74e3aa8e4438d2008a097a23d709582ca3e75f\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6e/7deb4992a5da36eefecba9ffb249dc736f175a\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6f/3a7e42ea3e52c163532d43c22da6a2c0214356\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6f/8124b0d8159edf2aa9b00e06d4ce62f07d85b1\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/2f857ad67630628b938e3da5a04e80654a57d0\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/650b11e077ad354be1a4c9ad1f2b4793a7cbd5\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/a1fb38279207b9f7d20b4f04ec28083d4a6567\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/76/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/76/1a85a84df3bbf66309d6a4f2051decea8387df\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/76/a2c25d66fb8a8bb01c99dc20a03a7ce1eff09f\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/77/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/77/fe2e2b7c5523c4a0246d04cee28d6dc39bb7c9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7b/07802d0aeb0ae93b44a8210f055dfb6d3d3030\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7b/7932629982dcd3ab256376412064200d3afdb4\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/b9f963dc707a65b35ca17922903897a3b6f326\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/c0b57927a64568fe53be39087fe51f4696e1ca\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/f01a5f70f1d7d82ba07f35668352e1309f0c23\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/846121ad72f448eef1f421a750dc99554d7e5f\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/a71de06cd66ae121896135703f78a74a1387c4\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/b23a93c24e9c7a4ba6513adc240b8cc5b203b7\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7f/f90474aea1c91ae68b5be83081f2e66a87be0d\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/80/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/80/62180c579d98b6e9f06e06312d19c312a97dec\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/81/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/81/26ae9856c7d7129066f01223f769021fcd2729\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/81/59acef80ca4bfad7b63401096a16388283d599\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/82/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/82/10b129ef0593189ee8af2b186529829ebd2b85\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/85/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/85/7d999103ee1bcb567b11e161cf925c42da2206\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/85/daa6158b0654193304146bd048a4f55f169126\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/86/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/86/72e19b6ffc64ecdc46e824f793f917a486dbf2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/86/f8da681d50f2046fb809b6e7626f12c55f71ed\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/89/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/89/02cc90d5b69fd463ee5149f8095a1622441d5e\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/89/c36553e65c66b331969cba7aa46102921ff7e9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8b/a601437853c852f2998c1377680440d0ff2e4f\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8b/e6cc6901a24ac2b455177eae7aa321e7aa39dd\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8c/fb367b564edfde66c15da3ace2191651018e8f\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8c/fc9f19c51e947a99bac945fd25a68964525a39\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8e/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8e/3b30fcbd089eae2c56f6e9e3e29c22896a5595\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/90/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/90/a465b00076b4e6cc1f8b1b2a0c171ce991b577\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/86109fc0d1f3cfa6c96bb9492e3bc221e1360d\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/882b267471f4079c7d11921042cd67ddda297a\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/a08d528e2979e8e3a97dcb67ddd4e038652c08\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/98/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/98/3a97aa9e39ffe9cc01ac71cb8e4cc650502a04\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/99/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/99/c5a723ee831b131165ed7944f290f924e7f0e8\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9a/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9a/a57ed854d251c79ac2d8ab0e3be48bebe683dd\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9b/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9b/ed11afb2b49d217310859d97f68b6321e497c8\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/6db9b2e54c5083f5baf1c30cad5c671204ad5d\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/a350b18a44aecf29e56b378948d7e1eecaf85e\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/b671b1095d17ede75c7fffe6f4f1a46174cbb6\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9f/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9f/1c62f51c7256dfddd667b9ef6ed99f8c20b6f9\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a0/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a0/a62bb28a3fc92c52387d803f13fa77ef739bd2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a0/b35b6bcfc191a0934d0267750be498efafdcea\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a1/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a1/6d9b2f8aaf9884fb3efc2685e5bb68c909ab1c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a1/ebf8af7580e01420f55eb529fd391cff8340b2\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a3/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a3/3e6331e18e8c1f58bc9b243388810228a44067\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/49c52b92279b2b5f2b0de951c167d48624f01e\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/585a996fc1b35614b091a655877e0d175bc885\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/5bdf7e57e5f0eeac67442841929d82d98fc75c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/7e2c547fa36f94aab0bda27c1aa536233de2de\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a7/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a7/6a46c6be91550beeff13ee3cfe25de00f449e7\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a7/70388b6a414b9762bbd33beafcf4af5bc073cb\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/3e30581e41b5e102e6c910e0983becf455b452\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/68e633c2e959e270bca8fbf3052df64ea5e57b\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/9eabe9fc6326a1ba726c07db78b7e38a29f8e8\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/a3e17dab7170a8a52cd908f2e60982ce0ef855\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/1307faabe3ecc70e0c19d398cdab65f61a11a1\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/45a61ae49938c27cfc9627aad00100647411da\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/e8f243a5254ae6f757b6716350a53637424aab\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ae/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ae/756e3561b887b34374c32854e02cc2e70d12be\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/af/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/af/495e3cfa6b85603369941f34eaa3e2cf9e4099\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b0/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b0/be42326f14b8ebd400d4df8c356caf055e75ab\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b0/d0ff3501915274ced1c39f7a3ea4ffab1210b4\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/928c90124e96bccce96ad64477dfc6288640e7\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/acadc9ba94acba8155c07bf767216b7b24b3d9\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/ee2bd36d4b084466f57a71084b62306a4d0a34\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/ffdb886ad24cefdd0e3890fcea0d7dc9ee30ec\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b4/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b4/4db55c12c3cb465396e7b06ff4c51eaf83cb18\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b6/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b6/4c2fd6e896138bafb8f5b673ce91e3a4effc5f\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b6/a90bd40ce46443795939fc555eaa9018797f27\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b7/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b7/4791b0ff100c2b101018874510a485b1984740\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ba/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ba/b9c80e2bcdeae59aea601e92e337a59c30eaac\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ba/c3c51f0e8c85c8c9ebcdb2a11216302df7cea6\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bb/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bb/ba7deb515588880abc82f517cffbf54362e96c\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bd/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bd/79c5b47ef399d83ac579c268337c7d3e9e393d\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bd/b2b95a41bdfedfda9ee528d95fc592f8709db1\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bf/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bf/678fe2496965083143f711a0b6811d887364d0\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bf/83bc6a2a2d177b1cb9fed3faddb68a8fbf884f\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/18cdbea0daca3135a64a89b258a764f070cf3f\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/b52a670c7f7d964f6b58f69f45359d38d719b7\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/f3aff03a5fee3d91c324b347bc450bb66ccead\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c3/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c3/bfc5b1a4d6d7c371fe28589794bcf7f13bb6ad\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c5/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c5/c571c34f2bb44340bebbe5d9d69fbb87391c94\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c6/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c6/d837834a8ffd0ec302778cddf7b8b2cf02cee2\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c8/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c8/5903b9ddfd0f0aa962456fdf90cd056972093d\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c8/fbe0890820d944b26fd3b968ba2842c6d16236\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/599ac90996636f3a441547e632958e31f0f106\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/90dcd890535bb9fb0defe8237ba9fba2022fdf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/a53586f2a7116dccfce5897e871d8fec20dace\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cb/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cb/0375f9f6a578e79ea48098a897592d3f881a28\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/0ae3c3cebb68056d50e326898744b51ed98b0a\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/cba3e14c271e5f98904c680db26cfee0ec20a5\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/e3d3dccdd0d0ef45d3251c5e23dee776126bdd\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cf/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cf/43a6043e751ca92b8120a1fcce92522355bca8\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d2/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d2/4fd911bed228bcad38d577c5970a75e8333f79\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d3/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d3/95cdc73166dca5a22d0e24db5e48420483fb1a\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d6/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d6/808ffe71273ceb5485178cc28dc54a206eb7da\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d8/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d8/ddebe77e48e6eed353dd23044c2d4bdcd7488e\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d9/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d9/153fd7d89607e59575df81cfeefb366b7aee67\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d9/ffe6a1bfb79dd7e94a71f2dd459bacabe22474\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/db/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/db/2779bb5197934e9e5542453f2bd61862c2b9fb\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/c52b496d17a6ff4785f5268ba108faea876b1c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/c7edf4e2a3e5b2052cd84f04d16af6ca5aa1e8\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/fc7793d122638cb7cc2ac52cc41cb9f1b734b0\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/4ba3f3f18c125b0948d131580f94596f2c272c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/8500de4d1ac44b55bf39dec04c8b42f3936377\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/c648ead190f85e971ede3d222e3daf2b5bdc80\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/df/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/df/a8c3ea1559553da5a4a8c32261fe42c8e38a6d\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e0/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e0/d625de956b0a4aea0f46a68b2714bf469aefef\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e2/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e2/d5b34e33e77e5d85bd0bd92aa91cfc5cc3cedb\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e3/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e3/6fb7509c91c3ff04306d064cf412b2806bcec3\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e3/b16e6bdf3288b34d24a70a6300d6d31673ac42\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e4/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e4/f3d764e0df6bba4de128c1eb29113ab9946928\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e7/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e7/2353c7a172ca78a05dcb5d2f8c24651e9c00aa\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e7/90035ea686bc2c18668c1c1579b7c87df63add\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ea/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ea/729ad94c92bea9768c4460acda3ce84f4b991c\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ea/ba603f4d772a95a16b8975054e1619321fd805\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/eb/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/eb/18be66a4f45b0f5bbfdc4007ff8631897e92f3\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/eb/300ae51e7c7363058fcf3f3482e8609c5106aa\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ef/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ef/8b480a298478b32fadc76cb4afba1509f319e1\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f0/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f0/78e1f8cfb80be4f31e0e9f9e386e72e7b44764\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f1/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f1/12716149c589afc8a9a43ad1451806fca353d0\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f2/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f2/ae28b1a13e2200ebc83c72d8dbb50c70dd77cd\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f4/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f4/9326e266b20c1d81aeeda83110d7011d3d7806\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f9/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f9/7451d7fb15366a23bf5e45ed11019e4e9c0209\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fc/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fc/22bbba528300d31dc91bfac9762dddb1fac2b4\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fc/95f04bc3f54ce0bf7301ba4cd60029953c27e5\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fd/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fd/6421803f8c0cb3056bbc4d06010e2affdb5ec7\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fe/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fe/1e49415fb2a9ff3b0905808bbd9ab2e7552df8\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fe/2fcac61e8d803cc0c96b45690c537e5a06ac0a\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/info/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/info/commit-graph\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/info/packs\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-971a04f261625655d87e541552ecffc01b4322ef.idx\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-971a04f261625655d87e541552ecffc01b4322ef.pack\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-c1ab465e9704ea114b76fc2c98ae59facb0d16be.idx\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-c1ab465e9704ea114b76fc2c98ae59facb0d16be.pack\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/heads/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/heads/main\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/remotes/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/remotes/origin/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/remotes/origin/main\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/zuul/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/zuul/fetch\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.github/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.github/renovate.json\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/.github/workflows/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/.github/workflows/add-to-project.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/hooks/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/hooks/post_gen_project.sh\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/playbooks/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/playbooks/build.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/playbooks/pre.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/scripts/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/scripts/check-kolla-secrets.py\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/.gitignore\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/gilt.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/requirements.txt\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ansible.cfg\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/files/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/files/ceph/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/files/ceph/ceph.client.admin.keyring\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2023.2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2024.1\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2024.2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2025.1\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2025.2\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2026.1\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/haproxy-internal.pem\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/haproxy.pem\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/ca/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/ca/.gitkeep\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/galera.cnf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/neutron.conf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/octavia.conf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/ceph.conf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-scheduler.conf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-volume.conf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-backup/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-backup/ceph.client.cinder-backup.keyring\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-backup/ceph.client.cinder.keyring\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-volume/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-volume/ceph.client.cinder.keyring\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/ceph.client.glance.keyring\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/ceph.conf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/glance-api.conf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/gnocchi/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/gnocchi/ceph.client.gnocchi.keyring\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/gnocchi/ceph.conf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/haproxy/\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/haproxy/services.d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/haproxy/services.d/{{ 'ceph_dashboard.cfg' if cookiecutter.with_ceph|int }}\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/horizon/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/horizon/_9999-custom-settings.py\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/horizon/custom_local_settings\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/manila/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/manila/ceph.client.manila.keyring\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/manila/ceph.conf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/neutron/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/neutron/ml2_conf.ini\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/ceph.client.cinder.keyring\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/ceph.client.nova.keyring\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/ceph.conf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/nova-api.conf\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/nova-compute.conf\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/octavia/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/octavia/.gitkeep\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/hosts\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/host_vars/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/host_vars/node01.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/secrets.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/clouds.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/configuration.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/images.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/openrc\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/secrets.yml\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/secure.yml.sample\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/10-custom\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/20-roles\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/99-overwrite\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/host_vars/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/host_vars/node01.yml\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/netbox/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/netbox/.gitkeep\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts.d/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts.d/README.md\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/generate-keepass.py\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/generate-secrets.py\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/generate-secrets.sh\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/set-secrets.py\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/set-ssh-keypairs.py\ncd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/secrets/\n<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/secrets/keepass.kdbx\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ src/",
                                "cd+++++++++ src/github.com/",
                                "cd+++++++++ src/github.com/osism/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.ansible-lint",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.flake8",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.gitignore",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.yamllint.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.zuul.yaml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/Containerfile",
                                "cL+++++++++ src/github.com/osism/cfg-cookiecutter/Dockerfile -> Containerfile",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/LICENSE",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/README.md",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/cookiecutter.json",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/cookiecutter.yml.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/entrypoint.sh",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/pyproject.toml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/requirements.txt",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/tox.ini",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/COMMIT_EDITMSG",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/FETCH_HEAD",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/HEAD",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/ORIG_HEAD",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/config",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/config.worktree",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/description",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/index",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/packed-refs",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/branches/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/applypatch-msg.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/fsmonitor-watchman.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/post-update.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-applypatch.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-commit.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-merge-commit.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-push.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-rebase.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/pre-receive.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/prepare-commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/push-to-checkout.sample",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/hooks/update.sample",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/info/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/info/exclude",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/logs/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/logs/HEAD",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/00/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/00/1cdc1d5753efa48e6b57c0e21d22cd9cb60e46",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/00/f76d1b16ccfe59280aa33f6cdcdfd10e3763d7",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/03/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/03/7f161e3175d26c68fbef600575f38774f41e6c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/04/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/04/c846e01efd47e528a4f233b9ea67dbc8dc065e",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/05/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/05/53aa4edc02264bb42f0c987db0ed7a2fd068e4",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/05/f9561bb72109a596a362ff5a65445ab5085168",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/3c4ea266919d72a448d90a3650acc5838e4618",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/620b2cd79de520e8431eac455d0c130669f8ac",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/06/901a07d3afd8b3a61445805a4926a2e880264c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/07/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/07/a2fd7268bb163fd2bf8f5b361441c38b5a32c0",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/08/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/08/d933a8c1b96653d0f1fbc93d1596e751c95f50",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0a/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0a/8f1b27d89d993b431b7ec314344454fb518256",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/42bcc040486aefca47d1ee5fd6b3e44619ce8d",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/6c97f394bca5bde47f0428e326c198d9692ae3",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0c/b97a16b583af1493dcc768633782cb654a20d0",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0d/2598b3f4815825a887ce8d14f364bce5b099b5",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0d/77c40ec14f47ded2a8f4252cac230ec87e5d85",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0e/a9dc3261393dac84f2218db9f6c3aa5c8438bf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/0f/4d82321c4f53bc31762e32104d015efdcbb7c5",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/11/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/11/40e8ccf394014d65bd3599567ae3a88692bf7c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/11/ab761562dc86aae7ae343c0459f366ec0e873d",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/12/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/12/afaaaa7c62d6f24fc72c06eca2ddce989ca6e8",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/13/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/13/469734c0719f0a65917445822b965704ed39a9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/14/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/14/612bb5d578dafda7399f42eb891e6b1415508f",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/14/703b80962b83cacb2e51aca40d86b16e6187ff",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/15/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/15/77d9e7d47676ec5d346cfb063f44d0fe6797cc",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/15/868131f2e49ec787c7bb1958176bb1fd8d5248",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/18/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/18/34ce98ca3a597186e89c3c2f7ee344609413c3",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1a/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1a/05ba39e3126046ca16804ca852b986ad6414a3",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/4600a0df2bbac69098d8897aea69505478836c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/a11f5a9e29e06395b48b75b9d25fd8241189be",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1b/df63c42bb797e8642a7d3898b380f14d2b20f8",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1d/dc215aeb9db66f33cf2f7df33ad979467c9451",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1e/91a762b66cdca1d7b0d090755f72183337c1e6",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1e/d0b6f940be7df2082a0813cea29876f3572251",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1f/22a71bb40b7be2aab7016584f88d6f10edbd12",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/1f/908a31b2a7ab044c6c28de4224fbbb5797c94b",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/23/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/23/473f0224c361f5e1ff1d40cafac5253d1b9e87",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/23/6e0fa7686207f9c29915e7a1275706955be548",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/25/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/25/5479e572c001cae882335b062615f83a4cac19",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/97217b04f90ac1240d0185f177757e039eedb2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/a6722adeb9fa36319782704b66e6ca1a1cdec1",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/27/f6ee3a9ef7d6e56be287592ab6ed9cf0581142",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/28/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/28/f5e2c56349d5b0cb121d74da322fe1306c01d2",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/29/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/29/f1e477969030f8e7509691ef32fff7c0324a1b",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2a/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2a/f38b8b7ed5fc2bf2c21a7a02b54cd69a4d9e1a",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2c/d4b00b9cec36a8a9c33ac24871529bda023268",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2d/b69acb5ab45368605e4616ab6860ed842fd2df",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/2d/f46cb3bb9f0541be37ddf04b7699d48d7540ad",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/30/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/30/0720e90fb307b689053de1dcc6c0ac9b1a0fc0",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/30/18f8889d70cd36bc8f36c98db75c454525516c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/31/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/31/8d18def093ee142e3e54a660f5a1b9a9453077",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/33/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/33/7d9b47894328290eb4cd1789c8d8e44fe39411",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/35/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/35/3defc53e535976e1513a25356887f22a77ce37",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/35/83767fc06bad7fd89b90fe3219d49787132cb0",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/36/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/36/0f1f7b00f5e2d59f094c8d6c1f0cd7a63f9c1f",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/0669e3a898ccbeb3a3b30a0a5ea7b8226dd82a",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/1a1435666c9fb4896d0fa6868e8120c115448e",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/39/3cd416681ea684a182b19c8b58bcaadd8fa874",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3b/16feb1f0ad9e4bc70d7737f245ccf20f1f20df",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3c/f6204ad2267dadf364890781bcc7ca7efb6da9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/126067ab02e355a42685756d8a7adaed9b87c1",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/823604f5f7d74ac919869fd051b1288434d831",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3e/dd1aceddcc5d23134d9bcda72c3dd9fdf5708e",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/3f/8821903dcc8e79f5d680b49111d53d640932a4",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/42/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/42/b27f1d911bd5606b2061fa798e60b8e8629586",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/43/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/43/5e5287ef9ae19f68f588d5ff6f233c2556196d",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/44/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/44/27b1c8c239688078ad970e36ee57926de2a027",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/45/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/45/cadf077a2882879bf685d40c97db4bdb88866b",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/47/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/47/38c85c741df3217d92080eba669becbe4d8b18",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/47/875ede883dc8df735291e4411784a33109cfe3",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/48/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/48/3d608a72c38dec06bc65634bcdf259d2cf4006",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/48/7c888959ce2e64e709ad5e627df176c5644f5c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/49/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/49/674642419ee8fee4ef82d187411ac2f9d1283c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/49/9da7cb4413fab38c600a93aa370d7a7f1ffe55",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4a/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4a/02ab469a4dcdac214bf5aa470df5ef1cf357a2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4a/b185a4255f36beee05b1f4ba31a90a0917f43c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4c/9a8197e2c195520436ba45167f20fccae75d46",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4d/648dc4e29113aced876736a4740f33af166282",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4d/b2c7e1c95d5a34951dc0174d5fffa8a1a9cadc",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/4f/e357893cdd14edb30e6b557a58517750d0a439",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/50/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/50/9167ce7dc7fe2b47df7ad1b642e92978df9de9",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/50/ecf066e73bbb475f3d515159ef86d76a4c0b05",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/52/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/52/b4dff5982a6db156edccf9309915bac20b2ade",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/53/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/53/762337c31ff6211330e3428c1e8156be001335",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/54/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/54/7145c7064e90197757264f450f9a71d6186a9c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/55/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/55/2d739e553d6d1e4091f890b563acc599e5008b",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/55/60118a9dc5a2a813d27b37470dc79a928df1b4",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/56/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/56/e242c1b765c83683ed5115659ea730302198a1",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/57/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/57/88c7a3fb605445e6fd07c714d0a48ff001216a",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/57/90cc4d43ca516f5db5080b04ae213b32a4f0f5",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/58/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/58/bd6a2ee3aeabf07c644c4ba6e7e76ceeea1f65",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5a/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5a/d3b2a1455b6e89208ec5293ecad8fbafef8037",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5a/f4bf2bd9b4291e02d5e140515057cd50f1641f",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5b/2c9ea22cd2cfe452c4318d9fe91154efa7a484",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5b/512df33de2e53127273fd4a1dbaf7df5a92eeb",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5e/585f2976a4fcc4b2c1c38f3dd22a91de41f261",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5e/8df8ca42993288804f69af4be2379e91dcb037",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/52b94104bff62ea3a0263dd2b67785bd43a096",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/837566a6d44ee1e3a279e8f28e67adf4246c75",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/5f/aaf00b428b47cde385985068eaaa823a916422",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/60/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/60/4258793dbfa323d21377018dee3ee2dca5ac95",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/166322b32f6e63413d30fb7ba3cdbb9908b9b1",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/b58266d30368b319e8522fac508a1ca3ed44a6",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/62/efbfab324b6ba274ce7ad7ca1578d8513af5c9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/63/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/63/87cbbe8554d2fd9bd7f501132513fbdcfa80f9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/65/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/65/f20ec77535a1282c2ea4558f789a9d873f8e53",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/66/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/66/ca461b2e5821924a026adbf422f1ab0ca29155",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/68/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/68/63ba5419afd0fc76493da5241675124f37129a",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6b/060cdc2090aaf8aa92777362460546a1970126",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6b/ac89da65735c6fd015c4765a45fb7612025914",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6d/74e3aa8e4438d2008a097a23d709582ca3e75f",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6e/7deb4992a5da36eefecba9ffb249dc736f175a",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6f/3a7e42ea3e52c163532d43c22da6a2c0214356",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/6f/8124b0d8159edf2aa9b00e06d4ce62f07d85b1",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/2f857ad67630628b938e3da5a04e80654a57d0",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/650b11e077ad354be1a4c9ad1f2b4793a7cbd5",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/75/a1fb38279207b9f7d20b4f04ec28083d4a6567",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/76/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/76/1a85a84df3bbf66309d6a4f2051decea8387df",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/76/a2c25d66fb8a8bb01c99dc20a03a7ce1eff09f",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/77/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/77/fe2e2b7c5523c4a0246d04cee28d6dc39bb7c9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7b/07802d0aeb0ae93b44a8210f055dfb6d3d3030",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7b/7932629982dcd3ab256376412064200d3afdb4",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/b9f963dc707a65b35ca17922903897a3b6f326",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/c0b57927a64568fe53be39087fe51f4696e1ca",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7c/f01a5f70f1d7d82ba07f35668352e1309f0c23",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/846121ad72f448eef1f421a750dc99554d7e5f",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/a71de06cd66ae121896135703f78a74a1387c4",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7e/b23a93c24e9c7a4ba6513adc240b8cc5b203b7",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/7f/f90474aea1c91ae68b5be83081f2e66a87be0d",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/80/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/80/62180c579d98b6e9f06e06312d19c312a97dec",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/81/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/81/26ae9856c7d7129066f01223f769021fcd2729",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/81/59acef80ca4bfad7b63401096a16388283d599",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/82/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/82/10b129ef0593189ee8af2b186529829ebd2b85",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/85/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/85/7d999103ee1bcb567b11e161cf925c42da2206",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/85/daa6158b0654193304146bd048a4f55f169126",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/86/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/86/72e19b6ffc64ecdc46e824f793f917a486dbf2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/86/f8da681d50f2046fb809b6e7626f12c55f71ed",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/89/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/89/02cc90d5b69fd463ee5149f8095a1622441d5e",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/89/c36553e65c66b331969cba7aa46102921ff7e9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8b/a601437853c852f2998c1377680440d0ff2e4f",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8b/e6cc6901a24ac2b455177eae7aa321e7aa39dd",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8c/fb367b564edfde66c15da3ace2191651018e8f",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8c/fc9f19c51e947a99bac945fd25a68964525a39",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8e/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/8e/3b30fcbd089eae2c56f6e9e3e29c22896a5595",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/90/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/90/a465b00076b4e6cc1f8b1b2a0c171ce991b577",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/86109fc0d1f3cfa6c96bb9492e3bc221e1360d",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/882b267471f4079c7d11921042cd67ddda297a",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/94/a08d528e2979e8e3a97dcb67ddd4e038652c08",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/98/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/98/3a97aa9e39ffe9cc01ac71cb8e4cc650502a04",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/99/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/99/c5a723ee831b131165ed7944f290f924e7f0e8",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9a/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9a/a57ed854d251c79ac2d8ab0e3be48bebe683dd",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9b/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9b/ed11afb2b49d217310859d97f68b6321e497c8",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/6db9b2e54c5083f5baf1c30cad5c671204ad5d",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/a350b18a44aecf29e56b378948d7e1eecaf85e",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9c/b671b1095d17ede75c7fffe6f4f1a46174cbb6",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9f/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/9f/1c62f51c7256dfddd667b9ef6ed99f8c20b6f9",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a0/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a0/a62bb28a3fc92c52387d803f13fa77ef739bd2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a0/b35b6bcfc191a0934d0267750be498efafdcea",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a1/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a1/6d9b2f8aaf9884fb3efc2685e5bb68c909ab1c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a1/ebf8af7580e01420f55eb529fd391cff8340b2",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a3/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a3/3e6331e18e8c1f58bc9b243388810228a44067",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/49c52b92279b2b5f2b0de951c167d48624f01e",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/585a996fc1b35614b091a655877e0d175bc885",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/5bdf7e57e5f0eeac67442841929d82d98fc75c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a5/7e2c547fa36f94aab0bda27c1aa536233de2de",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a7/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a7/6a46c6be91550beeff13ee3cfe25de00f449e7",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/a7/70388b6a414b9762bbd33beafcf4af5bc073cb",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/3e30581e41b5e102e6c910e0983becf455b452",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/68e633c2e959e270bca8fbf3052df64ea5e57b",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/9eabe9fc6326a1ba726c07db78b7e38a29f8e8",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/aa/a3e17dab7170a8a52cd908f2e60982ce0ef855",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/1307faabe3ecc70e0c19d398cdab65f61a11a1",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/45a61ae49938c27cfc9627aad00100647411da",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ac/e8f243a5254ae6f757b6716350a53637424aab",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ae/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ae/756e3561b887b34374c32854e02cc2e70d12be",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/af/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/af/495e3cfa6b85603369941f34eaa3e2cf9e4099",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b0/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b0/be42326f14b8ebd400d4df8c356caf055e75ab",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b0/d0ff3501915274ced1c39f7a3ea4ffab1210b4",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/928c90124e96bccce96ad64477dfc6288640e7",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/acadc9ba94acba8155c07bf767216b7b24b3d9",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/ee2bd36d4b084466f57a71084b62306a4d0a34",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b3/ffdb886ad24cefdd0e3890fcea0d7dc9ee30ec",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b4/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b4/4db55c12c3cb465396e7b06ff4c51eaf83cb18",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b6/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b6/4c2fd6e896138bafb8f5b673ce91e3a4effc5f",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b6/a90bd40ce46443795939fc555eaa9018797f27",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b7/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/b7/4791b0ff100c2b101018874510a485b1984740",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ba/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ba/b9c80e2bcdeae59aea601e92e337a59c30eaac",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ba/c3c51f0e8c85c8c9ebcdb2a11216302df7cea6",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bb/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bb/ba7deb515588880abc82f517cffbf54362e96c",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bd/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bd/79c5b47ef399d83ac579c268337c7d3e9e393d",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bd/b2b95a41bdfedfda9ee528d95fc592f8709db1",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bf/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bf/678fe2496965083143f711a0b6811d887364d0",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/bf/83bc6a2a2d177b1cb9fed3faddb68a8fbf884f",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/18cdbea0daca3135a64a89b258a764f070cf3f",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/b52a670c7f7d964f6b58f69f45359d38d719b7",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c2/f3aff03a5fee3d91c324b347bc450bb66ccead",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c3/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c3/bfc5b1a4d6d7c371fe28589794bcf7f13bb6ad",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c5/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c5/c571c34f2bb44340bebbe5d9d69fbb87391c94",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c6/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c6/d837834a8ffd0ec302778cddf7b8b2cf02cee2",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c8/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c8/5903b9ddfd0f0aa962456fdf90cd056972093d",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/c8/fbe0890820d944b26fd3b968ba2842c6d16236",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/599ac90996636f3a441547e632958e31f0f106",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/90dcd890535bb9fb0defe8237ba9fba2022fdf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ca/a53586f2a7116dccfce5897e871d8fec20dace",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cb/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cb/0375f9f6a578e79ea48098a897592d3f881a28",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/0ae3c3cebb68056d50e326898744b51ed98b0a",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/cba3e14c271e5f98904c680db26cfee0ec20a5",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cc/e3d3dccdd0d0ef45d3251c5e23dee776126bdd",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cf/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/cf/43a6043e751ca92b8120a1fcce92522355bca8",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d2/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d2/4fd911bed228bcad38d577c5970a75e8333f79",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d3/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d3/95cdc73166dca5a22d0e24db5e48420483fb1a",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d6/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d6/808ffe71273ceb5485178cc28dc54a206eb7da",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d8/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d8/ddebe77e48e6eed353dd23044c2d4bdcd7488e",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d9/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d9/153fd7d89607e59575df81cfeefb366b7aee67",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/d9/ffe6a1bfb79dd7e94a71f2dd459bacabe22474",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/db/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/db/2779bb5197934e9e5542453f2bd61862c2b9fb",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/c52b496d17a6ff4785f5268ba108faea876b1c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/c7edf4e2a3e5b2052cd84f04d16af6ca5aa1e8",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dc/fc7793d122638cb7cc2ac52cc41cb9f1b734b0",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/4ba3f3f18c125b0948d131580f94596f2c272c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/8500de4d1ac44b55bf39dec04c8b42f3936377",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/dd/c648ead190f85e971ede3d222e3daf2b5bdc80",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/df/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/df/a8c3ea1559553da5a4a8c32261fe42c8e38a6d",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e0/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e0/d625de956b0a4aea0f46a68b2714bf469aefef",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e2/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e2/d5b34e33e77e5d85bd0bd92aa91cfc5cc3cedb",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e3/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e3/6fb7509c91c3ff04306d064cf412b2806bcec3",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e3/b16e6bdf3288b34d24a70a6300d6d31673ac42",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e4/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e4/f3d764e0df6bba4de128c1eb29113ab9946928",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e7/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e7/2353c7a172ca78a05dcb5d2f8c24651e9c00aa",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/e7/90035ea686bc2c18668c1c1579b7c87df63add",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ea/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ea/729ad94c92bea9768c4460acda3ce84f4b991c",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ea/ba603f4d772a95a16b8975054e1619321fd805",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/eb/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/eb/18be66a4f45b0f5bbfdc4007ff8631897e92f3",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/eb/300ae51e7c7363058fcf3f3482e8609c5106aa",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ef/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/ef/8b480a298478b32fadc76cb4afba1509f319e1",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f0/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f0/78e1f8cfb80be4f31e0e9f9e386e72e7b44764",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f1/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f1/12716149c589afc8a9a43ad1451806fca353d0",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f2/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f2/ae28b1a13e2200ebc83c72d8dbb50c70dd77cd",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f4/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f4/9326e266b20c1d81aeeda83110d7011d3d7806",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f9/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/f9/7451d7fb15366a23bf5e45ed11019e4e9c0209",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fc/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fc/22bbba528300d31dc91bfac9762dddb1fac2b4",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fc/95f04bc3f54ce0bf7301ba4cd60029953c27e5",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fd/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fd/6421803f8c0cb3056bbc4d06010e2affdb5ec7",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fe/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fe/1e49415fb2a9ff3b0905808bbd9ab2e7552df8",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/fe/2fcac61e8d803cc0c96b45690c537e5a06ac0a",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/info/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/info/commit-graph",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/info/packs",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-971a04f261625655d87e541552ecffc01b4322ef.idx",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-971a04f261625655d87e541552ecffc01b4322ef.pack",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-c1ab465e9704ea114b76fc2c98ae59facb0d16be.idx",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/objects/pack/pack-c1ab465e9704ea114b76fc2c98ae59facb0d16be.pack",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/heads/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/heads/main",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/remotes/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/remotes/origin/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/remotes/origin/main",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/zuul/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.git/refs/zuul/fetch",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.github/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.github/renovate.json",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/.github/workflows/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/.github/workflows/add-to-project.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/hooks/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/hooks/post_gen_project.sh",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/playbooks/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/playbooks/build.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/playbooks/pre.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/scripts/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/scripts/check-kolla-secrets.py",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/.gitignore",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/gilt.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/requirements.txt",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ansible.cfg",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/ceph/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/custom/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/generic/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/files/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/files/ceph/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/infrastructure/files/ceph/ceph.client.admin.keyring",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2023.2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2024.1",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2024.2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2025.1",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2025.2",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/secrets.yml.2026.1",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/haproxy-internal.pem",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/haproxy.pem",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/ca/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/certificates/ca/.gitkeep",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/galera.cnf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/neutron.conf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/octavia.conf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/ceph.conf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-scheduler.conf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-volume.conf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-backup/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-backup/ceph.client.cinder-backup.keyring",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-backup/ceph.client.cinder.keyring",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-volume/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/cinder/cinder-volume/ceph.client.cinder.keyring",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/ceph.client.glance.keyring",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/ceph.conf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/glance/glance-api.conf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/gnocchi/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/gnocchi/ceph.client.gnocchi.keyring",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/gnocchi/ceph.conf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/haproxy/",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/haproxy/services.d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/haproxy/services.d/{{ 'ceph_dashboard.cfg' if cookiecutter.with_ceph|int }}",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/horizon/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/horizon/_9999-custom-settings.py",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/horizon/custom_local_settings",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/manila/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/manila/ceph.client.manila.keyring",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/manila/ceph.conf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/neutron/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/neutron/ml2_conf.ini",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/ceph.client.cinder.keyring",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/ceph.client.nova.keyring",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/ceph.conf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/nova-api.conf",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/nova/nova-compute.conf",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/octavia/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kolla/files/overlays/octavia/.gitkeep",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/kubernetes/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/hosts",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/host_vars/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/manager/host_vars/node01.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/monitoring/secrets.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/clouds.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/configuration.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/images.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/openrc",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/secrets.yml",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/environments/openstack/secure.yml.sample",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/10-custom",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/20-roles",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/99-overwrite",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/host_vars/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/inventory/host_vars/node01.yml",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/netbox/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/netbox/.gitkeep",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts.d/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts.d/README.md",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/generate-keepass.py",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/generate-secrets.py",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/generate-secrets.sh",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/set-secrets.py",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/scripts/set-ssh-keypairs.py",
                                "cd+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/secrets/",
                                "<f+++++++++ src/github.com/osism/cfg-cookiecutter/{{cookiecutter.project_name}}/secrets/keepass.kdbx"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000002d",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:05.844279Z",
                            "start": "2026-10-01T09:42:05.047581Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-000000000032",
                        "name": "ensure-output-dirs-present",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/ensure-output-dirs-present"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:06.615373Z",
                            "start": "2026-10-01T09:42:05.863870Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:06.889988Z",
                            "start": "2026-10-01T09:42:06.622375Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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.050425",
                            "end": "2026-10-01 09:42:07.208541",
                            "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-77c7-0fe4-00000000003a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:07.158116",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-77c7-0fe4-00000000003a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:07.421419Z",
                            "start": "2026-10-01T09:42:06.917599Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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.094432",
                            "end": "2026-10-01 09:42:07.782223",
                            "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-77c7-0fe4-00000000003b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:07.687791",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-77c7-0fe4-00000000003b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-000000000037",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:07.959652Z",
                            "start": "2026-10-01T09:42:07.449961Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:08.218808Z",
                            "start": "2026-10-01T09:42:07.970784Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-00000000003f",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j953886076591.931",
                            "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:05.891536",
                            "end": "2026-10-01 09:42:14.978363",
                            "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-77c7-0fe4-000000000040-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "results_file": "/home/zuul/.ansible_async/j953886076591.931",
                            "start": "2026-10-01 09:42:09.086827",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-77c7-0fe4-000000000040-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:19.816840Z",
                            "start": "2026-10-01T09:42:08.228204Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:19.872661Z",
                            "start": "2026-10-01T09:42:19.824582Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-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-77c7-0fe4-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:19.936777Z",
                            "start": "2026-10-01T09:42:19.887618Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000042",
                        "name": "Probe container network namespace (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "cmd": "set +e\nset -o pipefail\nnet=/home/zuul/zuul-output/logs/net-debug.pre.txt\nsud=/home/zuul/zuul-output/logs/sudo-debug.txt\n\nemit() {\n  echo \"$1\"\n  {\n    echo \"== isolation gate ==\"\n    echo \"$1\"\n  } >> \"$net\" 2>/dev/null\n  exit 0\n}\n\n[ -s \"$sud\" ]  || emit \"VERDICT=unknown reason=no-sudo-debug-snapshot\"\n\n# (A) Raw-IP reachability, independent of DNS. Three targets, one\n#     packet each; the role above writes one summary line per target.\nprobes=$(grep -cE '[0-9]+% packet loss' \"$sud\")\nlost=$(grep -cE '100% packet loss' \"$sud\")\n[ \"$probes\" -ge 3 ]  || emit \"VERDICT=unknown reason=too-few-ping-probes probes=$probes\"\n[ \"$lost\" -eq \"$probes\" ]  || emit \"VERDICT=healthy reason=ping-answered lost=$lost/$probes\"\n\n# (B) Cost of resolving the hostname of the node itself.\ngetent=$(awk '/^getent: /{print $2; exit}' \"$sud\" 2>/dev/null)\n[ -n \"$getent\" ]  || emit \"VERDICT=unknown reason=no-getent-timing\"\nslow=$(awk -v g=\"$getent\" -v t=5.0  'BEGIN {print (g + 0 >= t + 0) ? 1 : 0}')\n[ \"$slow\" = 1 ]  || emit \"VERDICT=unknown reason=ping-dead-but-dns-fast getent=${getent}s\"\n\n# (C) Veto only: if any HTTPS probe above got a response, the node\n#     has egress whatever ping and DNS say. Absent or truncated file\n#     cannot block the verdict -- it just cannot veto it.\nanswered=$(grep -cE 'http=[1-5][0-9]{2}' \"$net\" 2>/dev/null)\n[ \"${answered:-0}\" -eq 0 ]  || emit \"VERDICT=healthy reason=https-answered answered=$answered\"\n\nemit \"VERDICT=isolated ping_lost=$lost/$probes getent=${getent}s\"\n",
                            "delta": "0:00:00.009662",
                            "end": "2026-10-01 09:42:20.245213",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set +e\nset -o pipefail\nnet=/home/zuul/zuul-output/logs/net-debug.pre.txt\nsud=/home/zuul/zuul-output/logs/sudo-debug.txt\n\nemit() {\n  echo \"$1\"\n  {\n    echo \"== isolation gate ==\"\n    echo \"$1\"\n  } >> \"$net\" 2>/dev/null\n  exit 0\n}\n\n[ -s \"$sud\" ]  || emit \"VERDICT=unknown reason=no-sudo-debug-snapshot\"\n\n# (A) Raw-IP reachability, independent of DNS. Three targets, one\n#     packet each; the role above writes one summary line per target.\nprobes=$(grep -cE '[0-9]+% packet loss' \"$sud\")\nlost=$(grep -cE '100% packet loss' \"$sud\")\n[ \"$probes\" -ge 3 ]  || emit \"VERDICT=unknown reason=too-few-ping-probes probes=$probes\"\n[ \"$lost\" -eq \"$probes\" ]  || emit \"VERDICT=healthy reason=ping-answered lost=$lost/$probes\"\n\n# (B) Cost of resolving the hostname of the node itself.\ngetent=$(awk '/^getent: /{print $2; exit}' \"$sud\" 2>/dev/null)\n[ -n \"$getent\" ]  || emit \"VERDICT=unknown reason=no-getent-timing\"\nslow=$(awk -v g=\"$getent\" -v t=5.0  'BEGIN {print (g + 0 >= t + 0) ? 1 : 0}')\n[ \"$slow\" = 1 ]  || emit \"VERDICT=unknown reason=ping-dead-but-dns-fast getent=${getent}s\"\n\n# (C) Veto only: if any HTTPS probe above got a response, the node\n#     has egress whatever ping and DNS say. Absent or truncated file\n#     cannot block the verdict -- it just cannot veto it.\nanswered=$(grep -cE 'http=[1-5][0-9]{2}' \"$net\" 2>/dev/null)\n[ \"${answered:-0}\" -eq 0 ]  || emit \"VERDICT=healthy reason=https-answered answered=$answered\"\n\nemit \"VERDICT=isolated ping_lost=$lost/$probes getent=${getent}s\"\n",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac1f-6606-77c7-0fe4-000000000043-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:20.235551",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "VERDICT=healthy reason=ping-answered lost=0/3",
                            "stdout_lines": [
                                "VERDICT=healthy reason=ping-answered lost=0/3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-77c7-0fe4-000000000043-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:20.500026Z",
                            "start": "2026-10-01T09:42:19.986853Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000043",
                        "name": "Evaluate node isolation verdict (pre-run gate)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.fail",
                            "changed": false,
                            "false_condition": "'VERDICT=isolated' in diagnose_network_gate_verdict.stdout",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-77c7-0fe4-00000000003d",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:20.567060Z",
                            "start": "2026-10-01T09:42:20.510687Z"
                        },
                        "id": "0242ac1f-6606-77c7-0fe4-000000000044",
                        "name": "Abort the pre-run on a fully isolated node"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 12,
            "failures": 0,
            "ignored": 0,
            "ok": 33,
            "rescued": 0,
            "skipped": 6,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "master",
    "index": "1",
    "phase": "pre",
    "playbook": "github.com/osism/openinfra-zuul-jobs/playbooks/unittests/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:42:23.594328Z",
                    "start": "2026-10-01T09:42:21.568727Z"
                },
                "id": "0242ac1f-6606-6311-5dda-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "bindep"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:21.671309Z",
                            "start": "2026-10-01T09:42:21.585219Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000004",
                        "name": "Install binary dependencies"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "find.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:21.724744Z",
                            "start": "2026-10-01T09:42:21.695231Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-00000000001e",
                        "name": "Include find tasks"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "stat",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "src/github.com/osism/cfg-cookiecutter/bindep.txt"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.104768Z",
                            "start": "2026-10-01T09:42:21.739910Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-00000000003e",
                        "name": "Look for bindep.txt"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "bindep_file_stat.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.135887Z",
                            "start": "2026-10-01T09:42:22.111632Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-00000000003f",
                        "name": "Define bindep_file fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "stat",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "src/github.com/osism/cfg-cookiecutter/other-requirements.txt"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.395992Z",
                            "start": "2026-10-01T09:42:22.143724Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000040",
                        "name": "Look for other-requirements.txt"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "not bindep_other_file_stat is skipped and  bindep_other_file_stat.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.452255Z",
                            "start": "2026-10-01T09:42:22.402521Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000041",
                        "name": "Define bindep_file fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "stat",
                            "changed": false,
                            "false_condition": "bindep_fallback is defined and not bindep_other_file_stat is skipped and not bindep_other_file_stat.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.495557Z",
                            "start": "2026-10-01T09:42:22.460982Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000042",
                        "name": "Look for bindep fallback file"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "not bindep_fallback_file_stat is skipped and  bindep_fallback_file_stat.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.539079Z",
                            "start": "2026-10-01T09:42:22.503286Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000043",
                        "name": "Define bindep_file fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "bindep_file is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.586967Z",
                            "start": "2026-10-01T09:42:22.550954Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-00000000001f",
                        "name": "Include bindep tasks"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "bindep_file is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.621083Z",
                            "start": "2026-10-01T09:42:22.594410Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000020",
                        "name": "Include install tasks"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "bindep_file is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.682319Z",
                            "start": "2026-10-01T09:42:22.627813Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000021",
                        "name": "Include package tasks"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "test-setup"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:22.754213Z",
                            "start": "2026-10-01T09:42:22.707179Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000005",
                        "name": "Run test-setup role"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "stat",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "src/github.com/osism/cfg-cookiecutter/tools/test-setup.sh"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000008f",
                        "name": "test-setup",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/test-setup"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:23.052863Z",
                            "start": "2026-10-01T09:42:22.792207Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000091",
                        "name": "Check if project's tools/test-setup.sh exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "p.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-6311-5dda-00000000008f",
                        "name": "test-setup",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/test-setup"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:23.594328Z",
                            "start": "2026-10-01T09:42:23.085836Z"
                        },
                        "id": "0242ac1f-6606-6311-5dda-000000000092",
                        "name": "Run tools/test-setup.sh"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 0,
            "failures": 0,
            "ignored": 0,
            "ok": 4,
            "rescued": 0,
            "skipped": 8,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "master",
    "index": "2",
    "phase": "pre",
    "playbook": "github.com/osism/openinfra-zuul-jobs/playbooks/tox/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:42:48.293135Z",
                    "start": "2026-10-01T09:42:24.716302Z"
                },
                "id": "0242ac1f-6606-bd34-f14a-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:24.805522Z",
                            "start": "2026-10-01T09:42:24.746112Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000008",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:24.903125Z",
                            "start": "2026-10-01T09:42:24.820327Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000000a",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:24.947193Z",
                            "start": "2026-10-01T09:42:24.911434Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000000b",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:25.005266Z",
                            "start": "2026-10-01T09:42:24.955749Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000000d",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:25.059873Z",
                            "start": "2026-10-01T09:42:25.017175Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000000e",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:25.115289Z",
                            "start": "2026-10-01T09:42:25.067906Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000000f",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:25.168320Z",
                            "start": "2026-10-01T09:42:25.122159Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000011",
                        "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-bd34-f14a-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:25.240426Z",
                            "start": "2026-10-01T09:42:25.174216Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000012",
                        "name": "Activate python using stow"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "ensure-pip"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:25.313883Z",
                            "start": "2026-10-01T09:42:25.255092Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000016",
                        "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.006008",
                            "end": "2026-10-01 09:42:25.953217",
                            "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-bd34-f14a-000000000081-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-10-01 09:42:25.947209",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-bd34-f14a-000000000081-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:26.448155Z",
                            "start": "2026-10-01T09:42:25.438481Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000081",
                        "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/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml",
                                    "include_args": {},
                                    "zj_distro_os": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:26.596419Z",
                            "start": "2026-10-01T09:42:26.453933Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000082",
                        "name": "Install pip from packages"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "apt",
                            "cache_update_time": 1790847749,
                            "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:30.639102Z",
                            "start": "2026-10-01T09:42:26.634667Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-0000000000be",
                        "name": "Update package lists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "cache_update_time": 1790847749,
                            "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 4 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 (21.3 MB/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 ... 27779 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 4 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 (21.3 MB/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 ... 27779 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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:35.585471Z",
                            "start": "2026-10-01T09:42:30.643383Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-0000000000bf",
                        "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:35.604432Z",
                            "start": "2026-10-01T09:42:35.591237Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-0000000000c0",
                        "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:35.653238Z",
                            "start": "2026-10-01T09:42:35.610669Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000087",
                        "name": "Ensure setuptools"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "python3",
                                "-m",
                                "ensurepip",
                                "--help"
                            ],
                            "delta": "0:00:00.083302",
                            "end": "2026-10-01 09:42:36.017254",
                            "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-bd34-f14a-000000000088-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:35.933952",
                            "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-bd34-f14a-000000000088-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:36.185784Z",
                            "start": "2026-10-01T09:42:35.677202Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000088",
                        "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:36.216895Z",
                            "start": "2026-10-01T09:42:36.192725Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000089",
                        "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:36.236460Z",
                            "start": "2026-10-01T09:42:36.223566Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000008a",
                        "name": "Install pip from source"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "command -v python3\n",
                            "delta": "0:00:00.004096",
                            "end": "2026-10-01 09:42:36.494349",
                            "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-bd34-f14a-00000000008b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:36.490253",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/usr/bin/python3",
                            "stdout_lines": [
                                "/usr/bin/python3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-bd34-f14a-00000000008b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:36.767205Z",
                            "start": "2026-10-01T09:42:36.260896Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000008b",
                        "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:36.840885Z",
                            "start": "2026-10-01T09:42:36.771365Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000008c",
                        "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-bd34-f14a-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:36.945144Z",
                            "start": "2026-10-01T09:42:36.845083Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000008d",
                        "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.005948",
                            "end": "2026-10-01 09:42:37.349808",
                            "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-bd34-f14a-000000000017-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-10-01 09:42:37.343860",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-bd34-f14a-000000000017-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:37.504880Z",
                            "start": "2026-10-01T09:42:36.995873Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000017",
                        "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-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:37.543628Z",
                            "start": "2026-10-01T09:42:37.509932Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-000000000018",
                        "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.952689",
                            "end": "2026-10-01 09:42:42.886721",
                            "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-bd34-f14a-00000000001a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:37.934032",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-bd34-f14a-00000000001a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:43.121159Z",
                            "start": "2026-10-01T09:42:37.613532Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000001a",
                        "name": "Create local venv"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/pip",
                                "install",
                                "tox"
                            ],
                            "delta": "0:00:03.558067",
                            "end": "2026-10-01 09:42:46.943158",
                            "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-bd34-f14a-00000000001b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:43.385091",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Collecting tox\n  Downloading tox-4.64.6-py3-none-any.whl (233 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 233.9/233.9 kB 5.4 MB/s eta 0:00:00\nCollecting cachetools>=7.0.3\n  Downloading cachetools-7.2.0-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-4.0.8-py3-none-any.whl (109 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 109.7/109.7 kB 19.1 MB/s eta 0:00:00\nCollecting packaging>=26\n  Downloading packaging-26.3-py3-none-any.whl (129 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 130.0/130.0 kB 18.5 MB/s eta 0:00:00\nCollecting platformdirs>=4.9.4\n  Downloading platformdirs-4.12.2-py3-none-any.whl (32 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.11.2-py3-none-any.whl (13 kB)\nCollecting python-discovery>=1.4.4\n  Downloading python_discovery-1.6.1-py3-none-any.whl (38 kB)\nCollecting tomli-w>=1.2\n  Downloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)\nCollecting typing-extensions>=4.15\n  Downloading typing_extensions-4.16.0-py3-none-any.whl (45 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 45.6/45.6 kB 8.5 MB/s eta 0:00:00\nCollecting virtualenv>=21.1\n  Downloading virtualenv-21.14.2-py3-none-any.whl (5.5 MB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 5.5/5.5 MB 38.5 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 47.6 MB/s eta 0:00:00\nInstalling collected packages: distlib, typing-extensions, tomli-w, pluggy, platformdirs, packaging, filelock, colorama, cachetools, python-discovery, pyproject-api, virtualenv, tox\nSuccessfully installed cachetools-7.2.0 colorama-0.4.6 distlib-0.4.3 filelock-4.0.8 packaging-26.3 platformdirs-4.12.2 pluggy-1.6.0 pyproject-api-1.11.2 python-discovery-1.6.1 tomli-w-1.2.0 tox-4.64.6 typing-extensions-4.16.0 virtualenv-21.14.2",
                            "stdout_lines": [
                                "Collecting tox",
                                "  Downloading tox-4.64.6-py3-none-any.whl (233 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 233.9/233.9 kB 5.4 MB/s eta 0:00:00",
                                "Collecting cachetools>=7.0.3",
                                "  Downloading cachetools-7.2.0-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-4.0.8-py3-none-any.whl (109 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 109.7/109.7 kB 19.1 MB/s eta 0:00:00",
                                "Collecting packaging>=26",
                                "  Downloading packaging-26.3-py3-none-any.whl (129 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 130.0/130.0 kB 18.5 MB/s eta 0:00:00",
                                "Collecting platformdirs>=4.9.4",
                                "  Downloading platformdirs-4.12.2-py3-none-any.whl (32 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.11.2-py3-none-any.whl (13 kB)",
                                "Collecting python-discovery>=1.4.4",
                                "  Downloading python_discovery-1.6.1-py3-none-any.whl (38 kB)",
                                "Collecting tomli-w>=1.2",
                                "  Downloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)",
                                "Collecting typing-extensions>=4.15",
                                "  Downloading typing_extensions-4.16.0-py3-none-any.whl (45 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 45.6/45.6 kB 8.5 MB/s eta 0:00:00",
                                "Collecting virtualenv>=21.1",
                                "  Downloading virtualenv-21.14.2-py3-none-any.whl (5.5 MB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 5.5/5.5 MB 38.5 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 47.6 MB/s eta 0:00:00",
                                "Installing collected packages: distlib, typing-extensions, tomli-w, pluggy, platformdirs, packaging, filelock, colorama, cachetools, python-discovery, pyproject-api, virtualenv, tox",
                                "Successfully installed cachetools-7.2.0 colorama-0.4.6 distlib-0.4.3 filelock-4.0.8 packaging-26.3 platformdirs-4.12.2 pluggy-1.6.0 pyproject-api-1.11.2 python-discovery-1.6.1 tomli-w-1.2.0 tox-4.64.6 typing-extensions-4.16.0 virtualenv-21.14.2"
                            ],
                            "zuul_log_id": "0242ac1f-6606-bd34-f14a-00000000001b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:47.169887Z",
                            "start": "2026-10-01T09:42:43.147321Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000001b",
                        "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-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:47.226534Z",
                            "start": "2026-10-01T09:42:47.182068Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000001c",
                        "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.392178",
                            "end": "2026-10-01 09:42:47.909527",
                            "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-bd34-f14a-00000000001e-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:47.517349",
                            "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.64.6 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.64.6 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-bd34-f14a-00000000001e-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:48.263410Z",
                            "start": "2026-10-01T09:42:47.254191Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000001e",
                        "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-bd34-f14a-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:48.293135Z",
                            "start": "2026-10-01T09:42:48.268412Z"
                        },
                        "id": "0242ac1f-6606-bd34-f14a-00000000001f",
                        "name": "Make global symlink"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 9,
            "failures": 0,
            "ignored": 0,
            "ok": 13,
            "rescued": 0,
            "skipped": 14,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "master",
    "index": "0",
    "phase": "run",
    "playbook": "github.com/osism/openinfra-zuul-jobs/playbooks/tox/run.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:44:08.009676Z",
                    "start": "2026-10-01T09:42:49.111453Z"
                },
                "id": "0242ac1f-6606-15f9-82c2-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "sudo",
                                "-n",
                                "true"
                            ],
                            "delta": "0:00:00.019913",
                            "end": "2026-10-01 09:42:49.561150",
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "sudo -n true",
                                    "_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-15f9-82c2-000000000008-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:49.541237",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "sudo: unable to resolve host debian: Name or service not known",
                            "stdout_lines": [
                                "sudo: unable to resolve host debian: Name or service not known"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-000000000008-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-000000000006",
                        "name": "revoke-sudo",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/revoke-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:49.653513Z",
                            "start": "2026-10-01T09:42:49.143528Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000008",
                        "name": "Check if zuul is sudoer"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "rm",
                                "-rf",
                                "/etc/sudoers.d/zuul",
                                "/etc/sudoers.d/90-cloud-init-users"
                            ],
                            "delta": "0:00:00.003633",
                            "end": "2026-10-01 09:42:49.981207",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "rm -rf /etc/sudoers.d/zuul /etc/sudoers.d/90-cloud-init-users",
                                    "_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-15f9-82c2-000000000009-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:49.977574",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-000000000009-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-000000000006",
                        "name": "revoke-sudo",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/revoke-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:50.195509Z",
                            "start": "2026-10-01T09:42:49.686653Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000009",
                        "name": "Remove sudo access for zuul user."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "! sudo -n true",
                            "delta": "0:00:00.015054",
                            "end": "2026-10-01 09:42:50.512391",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "! sudo -n true",
                                    "_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": "0242ac1f-6606-15f9-82c2-00000000000a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:50.497337",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "sudo: unable to resolve host debian: Name or service not known\nsudo: a password is required",
                            "stdout_lines": [
                                "sudo: unable to resolve host debian: Name or service not known",
                                "sudo: a password is required"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-00000000000a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-000000000006",
                        "name": "revoke-sudo",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/revoke-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:50.743281Z",
                            "start": "2026-10-01T09:42:50.233791Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-00000000000a",
                        "name": "Prove that general sudo access is actually revoked."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "stat",
                            "changed": false,
                            "false_condition": "tox_constraints_file is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:50.799049Z",
                            "start": "2026-10-01T09:42:50.761831Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-00000000000e",
                        "name": "Check to see if the constraints file exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "fail",
                            "changed": false,
                            "false_condition": "tox_constraints_file is defined and not stat_results.stat.exists",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:50.846616Z",
                            "start": "2026-10-01T09:42:50.811033Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-00000000000f",
                        "name": "Fail if constraints file is missing"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "tox_constraints_file is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:50.882644Z",
                            "start": "2026-10-01T09:42:50.856766Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000010",
                        "name": "Record file location"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "siblings.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:42:50.933594Z",
                            "start": "2026-10-01T09:42:50.894606Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000011",
                        "name": "Install tox siblings"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "--notest",
                                "-ecookiecutter",
                                "-vv",
                                "--skip-missing-interpreters=false"
                            ],
                            "delta": "0:00:49.408797",
                            "end": "2026-10-01 09:43:40.618800",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox  --notest  -ecookiecutter  -vv --skip-missing-interpreters=false",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/cfg-cookiecutter",
                                    "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-15f9-82c2-000000000053-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:42:51.210003",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "ROOT: 245 D setup logging to DEBUG on pid 1600 [tox/report.py:249]\ncookiecutter: 281 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]\ncookiecutter: 285 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]\ncookiecutter: 286 D filesystem is case-sensitive [python_discovery/_compat.py:18]\ncookiecutter: 291 D get interpreter info via cmd: /usr/bin/python3.11 /home/zuul/.local/tox/lib/python3.11/site-packages/python_discovery/_py_info_collect.py 33bbab402bb246217cfe301f80547120 f2930e0c9e4243ca20d8fa7b45660b9d [python_discovery/_cached_py_info.py:223]\ncookiecutter: 342 D wrote python info of /usr/bin/python3.11 at /home/zuul/.cache/virtualenv/py_info/5/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:159]\ncookiecutter: 342 I proposed PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]\ncookiecutter: 343 D accepted PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]\ncookiecutter: 345 D symlink on filesystem does work [virtualenv/info.py:51]\ncookiecutter: 346 D filesystem is case-sensitive [virtualenv/info.py:28]\ncookiecutter: 381 I create virtual environment via CPython3Posix(dest=/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter, clear=False, no_vcs_ignore=False, venv_redirect=False, global=False) [virtualenv/run/session.py:77]\ncookiecutter: 382 D create folder /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin [virtualenv/util/path/_sync.py:22]\ncookiecutter: 382 D create folder /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/include [virtualenv/util/path/_sync.py:22]\ncookiecutter: 382 D create folder /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages [virtualenv/util/path/_sync.py:22]\ncookiecutter: 382 D write /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:54]\ncookiecutter: 382 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tpython-version = 3.11 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tvirtualenv = 21.14.2 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 383 D symlink /usr/bin/python3.11 to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin/python [virtualenv/util/path/_sync.py:42]\ncookiecutter: 384 D ============================== target debug ============================== [virtualenv/run/session.py:79]\ncookiecutter: 384 D debug via /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin/python /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:316]\ncookiecutter: 384 D {\n  \"sys\": {\n    \"executable\": \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin/python\",\n    \"_base_executable\": \"/usr/bin/python3.11\",\n    \"prefix\": \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter\",\n    \"base_prefix\": \"/usr\",\n    \"exec_prefix\": \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter\",\n    \"base_exec_prefix\": \"/usr\",\n    \"path\": [\n      \"/usr/lib/python311.zip\",\n      \"/usr/lib/python3.11\",\n      \"/usr/lib/python3.11/lib-dynload\",\n      \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages\"\n    ],\n    \"meta_path\": [\n      \"<class '_frozen_importlib.BuiltinImporter'>\",\n      \"<class '_frozen_importlib.FrozenImporter'>\",\n      \"<class '_frozen_importlib_external.PathFinder'>\"\n    ],\n    \"fs_encoding\": \"utf-8\",\n    \"io_encoding\": \"utf-8\"\n  },\n  \"version\": \"3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]\",\n  \"makefile_filename\": \"/usr/lib/python3.11/config-3.11-x86_64-linux-gnu/Makefile\",\n  \"os\": \"<module 'os' (frozen)>\",\n  \"site\": \"<module 'site' (frozen)>\",\n  \"datetime\": \"<module 'datetime' from '/usr/lib/python3.11/datetime.py'>\",\n  \"math\": \"<module 'math' (built-in)>\",\n  \"json\": \"<module 'json' from '/usr/lib/python3.11/json/__init__.py'>\"\n} [virtualenv/run/session.py:80]\ncookiecutter: 423 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, via=copy, app_data_dir=/home/zuul/.cache/virtualenv) [virtualenv/run/session.py:84]\ncookiecutter: 431 D install pip from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/pip-26.2.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]\ncookiecutter: 432 D build install image for pip-26.2.1-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]\ncookiecutter: 439 D install setuptools from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/setuptools-84.0.0-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]\ncookiecutter: 441 D build install image for setuptools-84.0.0-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]\ncookiecutter: 706 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/_distutils_hack to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:50]\ncookiecutter: 708 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/setuptools-84.0.0.virtualenv to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/setuptools-84.0.0.virtualenv [virtualenv/util/path/_sync.py:50]\ncookiecutter: 709 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/setuptools to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/setuptools [virtualenv/util/path/_sync.py:50]\ncookiecutter: 802 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any/pip-26.2.1.dist-info to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/pip-26.2.1.dist-info [virtualenv/util/path/_sync.py:50]\ncookiecutter: 812 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any/pip to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/pip [virtualenv/util/path/_sync.py:50]\ncookiecutter: 813 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/setuptools-84.0.0.dist-info to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/setuptools-84.0.0.dist-info [virtualenv/util/path/_sync.py:50]\ncookiecutter: 816 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/distutils-precedence.pth to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:50]\ncookiecutter: 817 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]\ncookiecutter: 863 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any/pip-26.2.1.virtualenv to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/pip-26.2.1.virtualenv [virtualenv/util/path/_sync.py:50]\ncookiecutter: 864 D generated console scripts pip-3.11 pip3.11 pip3 pip [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]\ncookiecutter: 865 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python, Xonsh [virtualenv/run/session.py:90]\ncookiecutter: 873 D write /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:54]\ncookiecutter: 873 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \tpython-version = 3.11 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 873 D \tvirtualenv = 21.14.2 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 874 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 874 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 874 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 874 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]\ncookiecutter: 882 W install_deps> python -I -m pip install -r requirements.txt [tox/tox_env/api.py:500]\nCollecting PyYAML==6.0.3 (from -r requirements.txt (line 1))\n  Downloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)\nCollecting ansible==12.3.0 (from -r requirements.txt (line 2))\n  Downloading ansible-12.3.0-py3-none-any.whl.metadata (8.1 kB)\nCollecting click==8.5.0 (from -r requirements.txt (line 3))\n  Downloading click-8.5.0-py3-none-any.whl.metadata (2.6 kB)\nCollecting cookiecutter==2.7.1 (from -r requirements.txt (line 4))\n  Downloading cookiecutter-2.7.1-py3-none-any.whl.metadata (7.3 kB)\nCollecting cryptography==50.0.1 (from -r requirements.txt (line 5))\n  Downloading cryptography-50.0.1-cp311-abi3-manylinux_2_34_x86_64.whl.metadata (4.3 kB)\nCollecting loguru==0.7.3 (from -r requirements.txt (line 6))\n  Downloading loguru-0.7.3-py3-none-any.whl.metadata (22 kB)\nCollecting oslo.utils==10.2.0 (from -r requirements.txt (line 7))\n  Downloading oslo_utils-10.2.0-py3-none-any.whl.metadata (2.1 kB)\nCollecting paramiko==5.0.0 (from -r requirements.txt (line 8))\n  Downloading paramiko-5.0.0-py3-none-any.whl.metadata (3.7 kB)\nCollecting passlib==1.7.4 (from -r requirements.txt (line 9))\n  Downloading passlib-1.7.4-py2.py3-none-any.whl.metadata (1.7 kB)\nCollecting pwgen==0.8.2.post0 (from -r requirements.txt (line 10))\n  Downloading pwgen-0.8.2.post0.tar.gz (2.9 kB)\n  Installing build dependencies: started\n  Installing build dependencies: finished with status 'done'\n  Getting requirements to build wheel: started\n  Getting requirements to build wheel: finished with status 'done'\n  Preparing metadata (pyproject.toml): started\n  Preparing metadata (pyproject.toml): finished with status 'done'\nCollecting pycryptodome==3.23.0 (from -r requirements.txt (line 11))\n  Downloading pycryptodome-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.4 kB)\nCollecting pykeepass==4.2.0 (from -r requirements.txt (line 12))\n  Downloading pykeepass-4.2.0-py3-none-any.whl.metadata (6.6 kB)\nCollecting python-gilt==1.2.3 (from -r requirements.txt (line 13))\n  Downloading python_gilt-1.2.3-py2.py3-none-any.whl.metadata (1.4 kB)\nCollecting ruamel.yaml==0.19.1 (from -r requirements.txt (line 14))\n  Downloading ruamel_yaml-0.19.1-py3-none-any.whl.metadata (16 kB)\nCollecting yamllint==1.38.0 (from -r requirements.txt (line 15))\n  Downloading yamllint-1.38.0-py3-none-any.whl.metadata (4.2 kB)\nCollecting ansible-core~=2.19.5 (from ansible==12.3.0->-r requirements.txt (line 2))\n  Downloading ansible_core-2.19.13-py3-none-any.whl.metadata (7.7 kB)\nCollecting binaryornot>=0.4.4 (from cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading binaryornot-0.6.0-py3-none-any.whl.metadata (2.9 kB)\nCollecting Jinja2<4.0.0,>=2.7 (from cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)\nCollecting python-slugify>=4.0.0 (from cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading python_slugify-9.1.2-py3-none-any.whl.metadata (12 kB)\nCollecting requests>=2.23.0 (from cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading requests-2.34.2-py3-none-any.whl.metadata (4.8 kB)\nCollecting arrow (from cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading arrow-1.4.0-py3-none-any.whl.metadata (7.7 kB)\nCollecting rich (from cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading rich-15.0.0-py3-none-any.whl.metadata (18 kB)\nCollecting cffi>=2.0.0 (from cryptography==50.0.1->-r requirements.txt (line 5))\n  Downloading cffi-2.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.5 kB)\nCollecting iso8601>=0.1.11 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading iso8601-2.1.0-py3-none-any.whl.metadata (3.7 kB)\nCollecting oslo.i18n>=3.15.3 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading oslo_i18n-6.9.0-py3-none-any.whl.metadata (2.0 kB)\nCollecting netaddr>=0.10.0 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading netaddr-1.3.0-py3-none-any.whl.metadata (5.0 kB)\nCollecting pyparsing>=2.1.0 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading pyparsing-3.3.3-py3-none-any.whl.metadata (5.9 kB)\nCollecting packaging>=20.4 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading packaging-26.3-py3-none-any.whl.metadata (3.5 kB)\nCollecting psutil>=3.2.2 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl.metadata (22 kB)\nCollecting pbr>=6.1.0 (from oslo.utils==10.2.0->-r requirements.txt (line 7))\n  Downloading pbr-7.0.3-py2.py3-none-any.whl.metadata (3.8 kB)\nCollecting bcrypt>=3.2 (from paramiko==5.0.0->-r requirements.txt (line 8))\n  Downloading bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl.metadata (10 kB)\nCollecting invoke>=2.0 (from paramiko==5.0.0->-r requirements.txt (line 8))\n  Downloading invoke-3.0.3-py3-none-any.whl.metadata (3.2 kB)\nCollecting pynacl>=1.5 (from paramiko==5.0.0->-r requirements.txt (line 8))\n  Downloading pynacl-1.6.2-cp38-abi3-manylinux_2_34_x86_64.whl.metadata (10.0 kB)\nCollecting pyotp>=2.9.0 (from pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading pyotp-2.10.0-py3-none-any.whl.metadata (10 kB)\nCollecting importlib-metadata (from pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading importlib_metadata-9.0.1-py3-none-any.whl.metadata (4.5 kB)\nCollecting construct>=2.10.53 (from pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading construct-2.10.70-py3-none-any.whl.metadata (4.2 kB)\nCollecting argon2_cffi>=18.1.0 (from pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading argon2_cffi-25.1.0-py3-none-any.whl.metadata (4.1 kB)\nCollecting pycryptodomex>=3.6.2 (from pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.4 kB)\nCollecting lxml (from pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading lxml-6.1.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (3.3 kB)\nCollecting colorama (from python-gilt==1.2.3->-r requirements.txt (line 13))\n  Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)\nCollecting fasteners (from python-gilt==1.2.3->-r requirements.txt (line 13))\n  Downloading fasteners-0.20-py3-none-any.whl.metadata (4.8 kB)\nCollecting sh (from python-gilt==1.2.3->-r requirements.txt (line 13))\n  Downloading sh-2.4.0-py3-none-any.whl.metadata (3.8 kB)\nCollecting pathspec>=1.0.0 (from yamllint==1.38.0->-r requirements.txt (line 15))\n  Downloading pathspec-1.1.1-py3-none-any.whl.metadata (14 kB)\nCollecting resolvelib<2.0.0,>=0.5.3 (from ansible-core~=2.19.5->ansible==12.3.0->-r requirements.txt (line 2))\n  Downloading resolvelib-1.2.1-py3-none-any.whl.metadata (3.7 kB)\nCollecting MarkupSafe>=2.0 (from Jinja2<4.0.0,>=2.7->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)\nCollecting argon2-cffi-bindings (from argon2_cffi>=18.1.0->pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (7.5 kB)\nCollecting pycparser (from cffi>=2.0.0->cryptography==50.0.1->-r requirements.txt (line 5))\n  Downloading pycparser-3.0-py3-none-any.whl.metadata (8.2 kB)\nRequirement already satisfied: setuptools in ./.tox/cookiecutter/lib/python3.11/site-packages (from pbr>=6.1.0->oslo.utils==10.2.0->-r requirements.txt (line 7)) (84.0.0)\nCollecting text-unidecode>=1.3 (from python-slugify>=4.0.0->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading text_unidecode-1.3-py2.py3-none-any.whl.metadata (2.4 kB)\nCollecting charset_normalizer<4,>=2 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading charset_normalizer-3.5.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (46 kB)\nCollecting idna<4,>=2.5 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading idna-3.20-py3-none-any.whl.metadata (7.2 kB)\nCollecting urllib3<3,>=1.26 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading urllib3-2.8.0-py3-none-any.whl.metadata (7.4 kB)\nCollecting certifi>=2023.5.7 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading certifi-2026.7.22-py3-none-any.whl.metadata (2.5 kB)\nCollecting python-dateutil>=2.7.0 (from arrow->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)\nCollecting tzdata (from arrow->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading tzdata-2026.4-py2.py3-none-any.whl.metadata (1.4 kB)\nCollecting six>=1.5 (from python-dateutil>=2.7.0->arrow->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)\nCollecting zipp>=3.20 (from importlib-metadata->pykeepass==4.2.0->-r requirements.txt (line 12))\n  Downloading zipp-4.1.0-py3-none-any.whl.metadata (3.6 kB)\nCollecting markdown-it-py>=2.2.0 (from rich->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading markdown_it_py-4.2.0-py3-none-any.whl.metadata (7.4 kB)\nCollecting pygments<3.0.0,>=2.13.0 (from rich->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading pygments-2.21.0-py3-none-any.whl.metadata (2.5 kB)\nCollecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich->cookiecutter==2.7.1->-r requirements.txt (line 4))\n  Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)\nDownloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (806 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 806.6/806.6 kB 7.0 MB/s  0:00:00\nDownloading ansible-12.3.0-py3-none-any.whl (54.4 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 54.4/54.4 MB 73.7 MB/s  0:00:00\nDownloading click-8.5.0-py3-none-any.whl (125 kB)\nDownloading cookiecutter-2.7.1-py3-none-any.whl (41 kB)\nDownloading cryptography-50.0.1-cp311-abi3-manylinux_2_34_x86_64.whl (4.7 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 4.7/4.7 MB 46.9 MB/s  0:00:00\nDownloading loguru-0.7.3-py3-none-any.whl (61 kB)\nDownloading oslo_utils-10.2.0-py3-none-any.whl (154 kB)\nDownloading paramiko-5.0.0-py3-none-any.whl (208 kB)\nDownloading passlib-1.7.4-py2.py3-none-any.whl (525 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 525.6/525.6 kB 18.9 MB/s  0:00:00\nDownloading pycryptodome-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 39.7 MB/s  0:00:00\nDownloading pykeepass-4.2.0-py3-none-any.whl (56 kB)\nDownloading python_gilt-1.2.3-py2.py3-none-any.whl (22 kB)\nDownloading ruamel_yaml-0.19.1-py3-none-any.whl (118 kB)\nDownloading yamllint-1.38.0-py3-none-any.whl (68 kB)\nDownloading ansible_core-2.19.13-py3-none-any.whl (2.4 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.4/2.4 MB 44.3 MB/s  0:00:00\nDownloading jinja2-3.1.6-py3-none-any.whl (134 kB)\nDownloading resolvelib-1.2.1-py3-none-any.whl (18 kB)\nDownloading argon2_cffi-25.1.0-py3-none-any.whl (14 kB)\nDownloading bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (278 kB)\nDownloading binaryornot-0.6.0-py3-none-any.whl (14 kB)\nDownloading cffi-2.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (217 kB)\nDownloading construct-2.10.70-py3-none-any.whl (63 kB)\nDownloading invoke-3.0.3-py3-none-any.whl (160 kB)\nDownloading iso8601-2.1.0-py3-none-any.whl (7.5 kB)\nDownloading markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (22 kB)\nDownloading netaddr-1.3.0-py3-none-any.whl (2.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 37.7 MB/s  0:00:00\nDownloading oslo_i18n-6.9.0-py3-none-any.whl (47 kB)\nDownloading packaging-26.3-py3-none-any.whl (129 kB)\nDownloading pathspec-1.1.1-py3-none-any.whl (57 kB)\nDownloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)\nDownloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl (155 kB)\nDownloading pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 31.6 MB/s  0:00:00\nDownloading pynacl-1.6.2-cp38-abi3-manylinux_2_34_x86_64.whl (1.4 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1.4/1.4 MB 31.2 MB/s  0:00:00\nDownloading pyotp-2.10.0-py3-none-any.whl (13 kB)\nDownloading pyparsing-3.3.3-py3-none-any.whl (126 kB)\nDownloading python_slugify-9.1.2-py3-none-any.whl (15 kB)\nDownloading requests-2.34.2-py3-none-any.whl (73 kB)\nDownloading charset_normalizer-3.5.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (269 kB)\nDownloading idna-3.20-py3-none-any.whl (69 kB)\nDownloading urllib3-2.8.0-py3-none-any.whl (135 kB)\nDownloading certifi-2026.7.22-py3-none-any.whl (136 kB)\nDownloading text_unidecode-1.3-py2.py3-none-any.whl (78 kB)\nDownloading argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (26 kB)\nDownloading arrow-1.4.0-py3-none-any.whl (68 kB)\nDownloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)\nDownloading six-1.17.0-py2.py3-none-any.whl (11 kB)\nDownloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\nDownloading fasteners-0.20-py3-none-any.whl (18 kB)\nDownloading importlib_metadata-9.0.1-py3-none-any.whl (27 kB)\nDownloading zipp-4.1.0-py3-none-any.whl (10 kB)\nDownloading lxml-6.1.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (5.2 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 5.2/5.2 MB 37.7 MB/s  0:00:00\nDownloading pycparser-3.0-py3-none-any.whl (48 kB)\nDownloading rich-15.0.0-py3-none-any.whl (310 kB)\nDownloading pygments-2.21.0-py3-none-any.whl (1.3 MB)\n   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1.3/1.3 MB 29.8 MB/s  0:00:00\nDownloading markdown_it_py-4.2.0-py3-none-any.whl (91 kB)\nDownloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)\nDownloading sh-2.4.0-py3-none-any.whl (48 kB)\nDownloading tzdata-2026.4-py2.py3-none-any.whl (347 kB)\nBuilding wheels for collected packages: pwgen\n  Building wheel for pwgen (pyproject.toml): started\n  Building wheel for pwgen (pyproject.toml): finished with status 'done'\n  Created wheel for pwgen: filename=pwgen-0.8.2.post0-py3-none-any.whl size=3795 sha256=36b0ca6e42a3296f1d783c685f0c5be619c2962a0269cb33e58456f3d67cb46d\n  Stored in directory: /home/zuul/.cache/pip/wheels/c3/81/ed/8e13725daf8a767fbde13d7583ce457f3fdf974023341fac95\nSuccessfully built pwgen\nInstalling collected packages: text-unidecode, pwgen, passlib, zipp, urllib3, tzdata, six, sh, ruamel.yaml, resolvelib, PyYAML, python-slugify, pyparsing, pyotp, pygments, pycryptodomex, pycryptodome, pycparser, psutil, pbr, pathspec, packaging, netaddr, mdurl, MarkupSafe, lxml, loguru, iso8601, invoke, idna, fasteners, construct, colorama, click, charset_normalizer, certifi, binaryornot, bcrypt, yamllint, requests, python-gilt, python-dateutil, oslo.i18n, markdown-it-py, Jinja2, importlib-metadata, cffi, rich, pynacl, oslo.utils, cryptography, arrow, argon2-cffi-bindings, paramiko, cookiecutter, argon2_cffi, ansible-core, pykeepass, ansible\n\nSuccessfully installed Jinja2-3.1.6 MarkupSafe-3.0.3 PyYAML-6.0.3 ansible-12.3.0 ansible-core-2.19.13 argon2-cffi-bindings-26.1.0 argon2_cffi-25.1.0 arrow-1.4.0 bcrypt-5.0.0 binaryornot-0.6.0 certifi-2026.7.22 cffi-2.1.1 charset_normalizer-3.5.2 click-8.5.0 colorama-0.4.6 construct-2.10.70 cookiecutter-2.7.1 cryptography-50.0.1 fasteners-0.20 idna-3.20 importlib-metadata-9.0.1 invoke-3.0.3 iso8601-2.1.0 loguru-0.7.3 lxml-6.1.3 markdown-it-py-4.2.0 mdurl-0.1.2 netaddr-1.3.0 oslo.i18n-6.9.0 oslo.utils-10.2.0 packaging-26.3 paramiko-5.0.0 passlib-1.7.4 pathspec-1.1.1 pbr-7.0.3 psutil-7.2.2 pwgen-0.8.2.post0 pycparser-3.0 pycryptodome-3.23.0 pycryptodomex-3.23.0 pygments-2.21.0 pykeepass-4.2.0 pynacl-1.6.2 pyotp-2.10.0 pyparsing-3.3.3 python-dateutil-2.9.0.post0 python-gilt-1.2.3 python-slugify-9.1.2 requests-2.34.2 resolvelib-1.2.1 rich-15.0.0 ruamel.yaml-0.19.1 sh-2.4.0 six-1.17.0 text-unidecode-1.3 tzdata-2026.4 urllib3-2.8.0 yamllint-1.38.0 zipp-4.1.0\ncookiecutter: 49302 I exit 0 (48.42 seconds) /home/zuul/src/github.com/osism/cfg-cookiecutter> python -I -m pip install -r requirements.txt pid=1613 [tox/execute/api.py:337]\n  cookiecutter: OK (49.03 seconds)\n  congratulations :) (49.06 seconds)",
                            "stdout_lines": [
                                "ROOT: 245 D setup logging to DEBUG on pid 1600 [tox/report.py:249]",
                                "cookiecutter: 281 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]",
                                "cookiecutter: 285 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]",
                                "cookiecutter: 286 D filesystem is case-sensitive [python_discovery/_compat.py:18]",
                                "cookiecutter: 291 D get interpreter info via cmd: /usr/bin/python3.11 /home/zuul/.local/tox/lib/python3.11/site-packages/python_discovery/_py_info_collect.py 33bbab402bb246217cfe301f80547120 f2930e0c9e4243ca20d8fa7b45660b9d [python_discovery/_cached_py_info.py:223]",
                                "cookiecutter: 342 D wrote python info of /usr/bin/python3.11 at /home/zuul/.cache/virtualenv/py_info/5/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:159]",
                                "cookiecutter: 342 I proposed PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]",
                                "cookiecutter: 343 D accepted PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]",
                                "cookiecutter: 345 D symlink on filesystem does work [virtualenv/info.py:51]",
                                "cookiecutter: 346 D filesystem is case-sensitive [virtualenv/info.py:28]",
                                "cookiecutter: 381 I create virtual environment via CPython3Posix(dest=/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter, clear=False, no_vcs_ignore=False, venv_redirect=False, global=False) [virtualenv/run/session.py:77]",
                                "cookiecutter: 382 D create folder /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin [virtualenv/util/path/_sync.py:22]",
                                "cookiecutter: 382 D create folder /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/include [virtualenv/util/path/_sync.py:22]",
                                "cookiecutter: 382 D create folder /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages [virtualenv/util/path/_sync.py:22]",
                                "cookiecutter: 382 D write /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:54]",
                                "cookiecutter: 382 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tpython-version = 3.11 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tvirtualenv = 21.14.2 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 383 D symlink /usr/bin/python3.11 to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin/python [virtualenv/util/path/_sync.py:42]",
                                "cookiecutter: 384 D ============================== target debug ============================== [virtualenv/run/session.py:79]",
                                "cookiecutter: 384 D debug via /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin/python /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:316]",
                                "cookiecutter: 384 D {",
                                "  \"sys\": {",
                                "    \"executable\": \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/bin/python\",",
                                "    \"_base_executable\": \"/usr/bin/python3.11\",",
                                "    \"prefix\": \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter\",",
                                "    \"base_prefix\": \"/usr\",",
                                "    \"exec_prefix\": \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter\",",
                                "    \"base_exec_prefix\": \"/usr\",",
                                "    \"path\": [",
                                "      \"/usr/lib/python311.zip\",",
                                "      \"/usr/lib/python3.11\",",
                                "      \"/usr/lib/python3.11/lib-dynload\",",
                                "      \"/home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages\"",
                                "    ],",
                                "    \"meta_path\": [",
                                "      \"<class '_frozen_importlib.BuiltinImporter'>\",",
                                "      \"<class '_frozen_importlib.FrozenImporter'>\",",
                                "      \"<class '_frozen_importlib_external.PathFinder'>\"",
                                "    ],",
                                "    \"fs_encoding\": \"utf-8\",",
                                "    \"io_encoding\": \"utf-8\"",
                                "  },",
                                "  \"version\": \"3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]\",",
                                "  \"makefile_filename\": \"/usr/lib/python3.11/config-3.11-x86_64-linux-gnu/Makefile\",",
                                "  \"os\": \"<module 'os' (frozen)>\",",
                                "  \"site\": \"<module 'site' (frozen)>\",",
                                "  \"datetime\": \"<module 'datetime' from '/usr/lib/python3.11/datetime.py'>\",",
                                "  \"math\": \"<module 'math' (built-in)>\",",
                                "  \"json\": \"<module 'json' from '/usr/lib/python3.11/json/__init__.py'>\"",
                                "} [virtualenv/run/session.py:80]",
                                "cookiecutter: 423 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, via=copy, app_data_dir=/home/zuul/.cache/virtualenv) [virtualenv/run/session.py:84]",
                                "cookiecutter: 431 D install pip from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/pip-26.2.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]",
                                "cookiecutter: 432 D build install image for pip-26.2.1-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]",
                                "cookiecutter: 439 D install setuptools from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/setuptools-84.0.0-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]",
                                "cookiecutter: 441 D build install image for setuptools-84.0.0-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]",
                                "cookiecutter: 706 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/_distutils_hack to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 708 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/setuptools-84.0.0.virtualenv to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/setuptools-84.0.0.virtualenv [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 709 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/setuptools to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/setuptools [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 802 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any/pip-26.2.1.dist-info to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/pip-26.2.1.dist-info [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 812 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any/pip to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/pip [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 813 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/setuptools-84.0.0.dist-info to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/setuptools-84.0.0.dist-info [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 816 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-84.0.0-py3-none-any/distutils-precedence.pth to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 817 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]",
                                "cookiecutter: 863 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.2.1-py3-none-any/pip-26.2.1.virtualenv to /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/lib/python3.11/site-packages/pip-26.2.1.virtualenv [virtualenv/util/path/_sync.py:50]",
                                "cookiecutter: 864 D generated console scripts pip-3.11 pip3.11 pip3 pip [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]",
                                "cookiecutter: 865 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python, Xonsh [virtualenv/run/session.py:90]",
                                "cookiecutter: 873 D write /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:54]",
                                "cookiecutter: 873 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \tpython-version = 3.11 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 873 D \tvirtualenv = 21.14.2 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 874 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 874 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 874 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 874 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:65]",
                                "cookiecutter: 882 W install_deps> python -I -m pip install -r requirements.txt [tox/tox_env/api.py:500]",
                                "Collecting PyYAML==6.0.3 (from -r requirements.txt (line 1))",
                                "  Downloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)",
                                "Collecting ansible==12.3.0 (from -r requirements.txt (line 2))",
                                "  Downloading ansible-12.3.0-py3-none-any.whl.metadata (8.1 kB)",
                                "Collecting click==8.5.0 (from -r requirements.txt (line 3))",
                                "  Downloading click-8.5.0-py3-none-any.whl.metadata (2.6 kB)",
                                "Collecting cookiecutter==2.7.1 (from -r requirements.txt (line 4))",
                                "  Downloading cookiecutter-2.7.1-py3-none-any.whl.metadata (7.3 kB)",
                                "Collecting cryptography==50.0.1 (from -r requirements.txt (line 5))",
                                "  Downloading cryptography-50.0.1-cp311-abi3-manylinux_2_34_x86_64.whl.metadata (4.3 kB)",
                                "Collecting loguru==0.7.3 (from -r requirements.txt (line 6))",
                                "  Downloading loguru-0.7.3-py3-none-any.whl.metadata (22 kB)",
                                "Collecting oslo.utils==10.2.0 (from -r requirements.txt (line 7))",
                                "  Downloading oslo_utils-10.2.0-py3-none-any.whl.metadata (2.1 kB)",
                                "Collecting paramiko==5.0.0 (from -r requirements.txt (line 8))",
                                "  Downloading paramiko-5.0.0-py3-none-any.whl.metadata (3.7 kB)",
                                "Collecting passlib==1.7.4 (from -r requirements.txt (line 9))",
                                "  Downloading passlib-1.7.4-py2.py3-none-any.whl.metadata (1.7 kB)",
                                "Collecting pwgen==0.8.2.post0 (from -r requirements.txt (line 10))",
                                "  Downloading pwgen-0.8.2.post0.tar.gz (2.9 kB)",
                                "  Installing build dependencies: started",
                                "  Installing build dependencies: finished with status 'done'",
                                "  Getting requirements to build wheel: started",
                                "  Getting requirements to build wheel: finished with status 'done'",
                                "  Preparing metadata (pyproject.toml): started",
                                "  Preparing metadata (pyproject.toml): finished with status 'done'",
                                "Collecting pycryptodome==3.23.0 (from -r requirements.txt (line 11))",
                                "  Downloading pycryptodome-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.4 kB)",
                                "Collecting pykeepass==4.2.0 (from -r requirements.txt (line 12))",
                                "  Downloading pykeepass-4.2.0-py3-none-any.whl.metadata (6.6 kB)",
                                "Collecting python-gilt==1.2.3 (from -r requirements.txt (line 13))",
                                "  Downloading python_gilt-1.2.3-py2.py3-none-any.whl.metadata (1.4 kB)",
                                "Collecting ruamel.yaml==0.19.1 (from -r requirements.txt (line 14))",
                                "  Downloading ruamel_yaml-0.19.1-py3-none-any.whl.metadata (16 kB)",
                                "Collecting yamllint==1.38.0 (from -r requirements.txt (line 15))",
                                "  Downloading yamllint-1.38.0-py3-none-any.whl.metadata (4.2 kB)",
                                "Collecting ansible-core~=2.19.5 (from ansible==12.3.0->-r requirements.txt (line 2))",
                                "  Downloading ansible_core-2.19.13-py3-none-any.whl.metadata (7.7 kB)",
                                "Collecting binaryornot>=0.4.4 (from cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading binaryornot-0.6.0-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting Jinja2<4.0.0,>=2.7 (from cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting python-slugify>=4.0.0 (from cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading python_slugify-9.1.2-py3-none-any.whl.metadata (12 kB)",
                                "Collecting requests>=2.23.0 (from cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading requests-2.34.2-py3-none-any.whl.metadata (4.8 kB)",
                                "Collecting arrow (from cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading arrow-1.4.0-py3-none-any.whl.metadata (7.7 kB)",
                                "Collecting rich (from cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading rich-15.0.0-py3-none-any.whl.metadata (18 kB)",
                                "Collecting cffi>=2.0.0 (from cryptography==50.0.1->-r requirements.txt (line 5))",
                                "  Downloading cffi-2.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.5 kB)",
                                "Collecting iso8601>=0.1.11 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading iso8601-2.1.0-py3-none-any.whl.metadata (3.7 kB)",
                                "Collecting oslo.i18n>=3.15.3 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading oslo_i18n-6.9.0-py3-none-any.whl.metadata (2.0 kB)",
                                "Collecting netaddr>=0.10.0 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading netaddr-1.3.0-py3-none-any.whl.metadata (5.0 kB)",
                                "Collecting pyparsing>=2.1.0 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading pyparsing-3.3.3-py3-none-any.whl.metadata (5.9 kB)",
                                "Collecting packaging>=20.4 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading packaging-26.3-py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting psutil>=3.2.2 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl.metadata (22 kB)",
                                "Collecting pbr>=6.1.0 (from oslo.utils==10.2.0->-r requirements.txt (line 7))",
                                "  Downloading pbr-7.0.3-py2.py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting bcrypt>=3.2 (from paramiko==5.0.0->-r requirements.txt (line 8))",
                                "  Downloading bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl.metadata (10 kB)",
                                "Collecting invoke>=2.0 (from paramiko==5.0.0->-r requirements.txt (line 8))",
                                "  Downloading invoke-3.0.3-py3-none-any.whl.metadata (3.2 kB)",
                                "Collecting pynacl>=1.5 (from paramiko==5.0.0->-r requirements.txt (line 8))",
                                "  Downloading pynacl-1.6.2-cp38-abi3-manylinux_2_34_x86_64.whl.metadata (10.0 kB)",
                                "Collecting pyotp>=2.9.0 (from pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading pyotp-2.10.0-py3-none-any.whl.metadata (10 kB)",
                                "Collecting importlib-metadata (from pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading importlib_metadata-9.0.1-py3-none-any.whl.metadata (4.5 kB)",
                                "Collecting construct>=2.10.53 (from pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading construct-2.10.70-py3-none-any.whl.metadata (4.2 kB)",
                                "Collecting argon2_cffi>=18.1.0 (from pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading argon2_cffi-25.1.0-py3-none-any.whl.metadata (4.1 kB)",
                                "Collecting pycryptodomex>=3.6.2 (from pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.4 kB)",
                                "Collecting lxml (from pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading lxml-6.1.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (3.3 kB)",
                                "Collecting colorama (from python-gilt==1.2.3->-r requirements.txt (line 13))",
                                "  Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)",
                                "Collecting fasteners (from python-gilt==1.2.3->-r requirements.txt (line 13))",
                                "  Downloading fasteners-0.20-py3-none-any.whl.metadata (4.8 kB)",
                                "Collecting sh (from python-gilt==1.2.3->-r requirements.txt (line 13))",
                                "  Downloading sh-2.4.0-py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting pathspec>=1.0.0 (from yamllint==1.38.0->-r requirements.txt (line 15))",
                                "  Downloading pathspec-1.1.1-py3-none-any.whl.metadata (14 kB)",
                                "Collecting resolvelib<2.0.0,>=0.5.3 (from ansible-core~=2.19.5->ansible==12.3.0->-r requirements.txt (line 2))",
                                "  Downloading resolvelib-1.2.1-py3-none-any.whl.metadata (3.7 kB)",
                                "Collecting MarkupSafe>=2.0 (from Jinja2<4.0.0,>=2.7->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)",
                                "Collecting argon2-cffi-bindings (from argon2_cffi>=18.1.0->pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (7.5 kB)",
                                "Collecting pycparser (from cffi>=2.0.0->cryptography==50.0.1->-r requirements.txt (line 5))",
                                "  Downloading pycparser-3.0-py3-none-any.whl.metadata (8.2 kB)",
                                "Requirement already satisfied: setuptools in ./.tox/cookiecutter/lib/python3.11/site-packages (from pbr>=6.1.0->oslo.utils==10.2.0->-r requirements.txt (line 7)) (84.0.0)",
                                "Collecting text-unidecode>=1.3 (from python-slugify>=4.0.0->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading text_unidecode-1.3-py2.py3-none-any.whl.metadata (2.4 kB)",
                                "Collecting charset_normalizer<4,>=2 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading charset_normalizer-3.5.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (46 kB)",
                                "Collecting idna<4,>=2.5 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading idna-3.20-py3-none-any.whl.metadata (7.2 kB)",
                                "Collecting urllib3<3,>=1.26 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading urllib3-2.8.0-py3-none-any.whl.metadata (7.4 kB)",
                                "Collecting certifi>=2023.5.7 (from requests>=2.23.0->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading certifi-2026.7.22-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting python-dateutil>=2.7.0 (from arrow->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)",
                                "Collecting tzdata (from arrow->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading tzdata-2026.4-py2.py3-none-any.whl.metadata (1.4 kB)",
                                "Collecting six>=1.5 (from python-dateutil>=2.7.0->arrow->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)",
                                "Collecting zipp>=3.20 (from importlib-metadata->pykeepass==4.2.0->-r requirements.txt (line 12))",
                                "  Downloading zipp-4.1.0-py3-none-any.whl.metadata (3.6 kB)",
                                "Collecting markdown-it-py>=2.2.0 (from rich->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading markdown_it_py-4.2.0-py3-none-any.whl.metadata (7.4 kB)",
                                "Collecting pygments<3.0.0,>=2.13.0 (from rich->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading pygments-2.21.0-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich->cookiecutter==2.7.1->-r requirements.txt (line 4))",
                                "  Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)",
                                "Downloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (806 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 806.6/806.6 kB 7.0 MB/s  0:00:00",
                                "Downloading ansible-12.3.0-py3-none-any.whl (54.4 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 54.4/54.4 MB 73.7 MB/s  0:00:00",
                                "Downloading click-8.5.0-py3-none-any.whl (125 kB)",
                                "Downloading cookiecutter-2.7.1-py3-none-any.whl (41 kB)",
                                "Downloading cryptography-50.0.1-cp311-abi3-manylinux_2_34_x86_64.whl (4.7 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 4.7/4.7 MB 46.9 MB/s  0:00:00",
                                "Downloading loguru-0.7.3-py3-none-any.whl (61 kB)",
                                "Downloading oslo_utils-10.2.0-py3-none-any.whl (154 kB)",
                                "Downloading paramiko-5.0.0-py3-none-any.whl (208 kB)",
                                "Downloading passlib-1.7.4-py2.py3-none-any.whl (525 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 525.6/525.6 kB 18.9 MB/s  0:00:00",
                                "Downloading pycryptodome-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 39.7 MB/s  0:00:00",
                                "Downloading pykeepass-4.2.0-py3-none-any.whl (56 kB)",
                                "Downloading python_gilt-1.2.3-py2.py3-none-any.whl (22 kB)",
                                "Downloading ruamel_yaml-0.19.1-py3-none-any.whl (118 kB)",
                                "Downloading yamllint-1.38.0-py3-none-any.whl (68 kB)",
                                "Downloading ansible_core-2.19.13-py3-none-any.whl (2.4 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.4/2.4 MB 44.3 MB/s  0:00:00",
                                "Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)",
                                "Downloading resolvelib-1.2.1-py3-none-any.whl (18 kB)",
                                "Downloading argon2_cffi-25.1.0-py3-none-any.whl (14 kB)",
                                "Downloading bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (278 kB)",
                                "Downloading binaryornot-0.6.0-py3-none-any.whl (14 kB)",
                                "Downloading cffi-2.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (217 kB)",
                                "Downloading construct-2.10.70-py3-none-any.whl (63 kB)",
                                "Downloading invoke-3.0.3-py3-none-any.whl (160 kB)",
                                "Downloading iso8601-2.1.0-py3-none-any.whl (7.5 kB)",
                                "Downloading markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (22 kB)",
                                "Downloading netaddr-1.3.0-py3-none-any.whl (2.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 37.7 MB/s  0:00:00",
                                "Downloading oslo_i18n-6.9.0-py3-none-any.whl (47 kB)",
                                "Downloading packaging-26.3-py3-none-any.whl (129 kB)",
                                "Downloading pathspec-1.1.1-py3-none-any.whl (57 kB)",
                                "Downloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)",
                                "Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl (155 kB)",
                                "Downloading pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 2.3/2.3 MB 31.6 MB/s  0:00:00",
                                "Downloading pynacl-1.6.2-cp38-abi3-manylinux_2_34_x86_64.whl (1.4 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1.4/1.4 MB 31.2 MB/s  0:00:00",
                                "Downloading pyotp-2.10.0-py3-none-any.whl (13 kB)",
                                "Downloading pyparsing-3.3.3-py3-none-any.whl (126 kB)",
                                "Downloading python_slugify-9.1.2-py3-none-any.whl (15 kB)",
                                "Downloading requests-2.34.2-py3-none-any.whl (73 kB)",
                                "Downloading charset_normalizer-3.5.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (269 kB)",
                                "Downloading idna-3.20-py3-none-any.whl (69 kB)",
                                "Downloading urllib3-2.8.0-py3-none-any.whl (135 kB)",
                                "Downloading certifi-2026.7.22-py3-none-any.whl (136 kB)",
                                "Downloading text_unidecode-1.3-py2.py3-none-any.whl (78 kB)",
                                "Downloading argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (26 kB)",
                                "Downloading arrow-1.4.0-py3-none-any.whl (68 kB)",
                                "Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)",
                                "Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)",
                                "Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)",
                                "Downloading fasteners-0.20-py3-none-any.whl (18 kB)",
                                "Downloading importlib_metadata-9.0.1-py3-none-any.whl (27 kB)",
                                "Downloading zipp-4.1.0-py3-none-any.whl (10 kB)",
                                "Downloading lxml-6.1.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (5.2 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 5.2/5.2 MB 37.7 MB/s  0:00:00",
                                "Downloading pycparser-3.0-py3-none-any.whl (48 kB)",
                                "Downloading rich-15.0.0-py3-none-any.whl (310 kB)",
                                "Downloading pygments-2.21.0-py3-none-any.whl (1.3 MB)",
                                "   \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1.3/1.3 MB 29.8 MB/s  0:00:00",
                                "Downloading markdown_it_py-4.2.0-py3-none-any.whl (91 kB)",
                                "Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)",
                                "Downloading sh-2.4.0-py3-none-any.whl (48 kB)",
                                "Downloading tzdata-2026.4-py2.py3-none-any.whl (347 kB)",
                                "Building wheels for collected packages: pwgen",
                                "  Building wheel for pwgen (pyproject.toml): started",
                                "  Building wheel for pwgen (pyproject.toml): finished with status 'done'",
                                "  Created wheel for pwgen: filename=pwgen-0.8.2.post0-py3-none-any.whl size=3795 sha256=36b0ca6e42a3296f1d783c685f0c5be619c2962a0269cb33e58456f3d67cb46d",
                                "  Stored in directory: /home/zuul/.cache/pip/wheels/c3/81/ed/8e13725daf8a767fbde13d7583ce457f3fdf974023341fac95",
                                "Successfully built pwgen",
                                "Installing collected packages: text-unidecode, pwgen, passlib, zipp, urllib3, tzdata, six, sh, ruamel.yaml, resolvelib, PyYAML, python-slugify, pyparsing, pyotp, pygments, pycryptodomex, pycryptodome, pycparser, psutil, pbr, pathspec, packaging, netaddr, mdurl, MarkupSafe, lxml, loguru, iso8601, invoke, idna, fasteners, construct, colorama, click, charset_normalizer, certifi, binaryornot, bcrypt, yamllint, requests, python-gilt, python-dateutil, oslo.i18n, markdown-it-py, Jinja2, importlib-metadata, cffi, rich, pynacl, oslo.utils, cryptography, arrow, argon2-cffi-bindings, paramiko, cookiecutter, argon2_cffi, ansible-core, pykeepass, ansible",
                                "",
                                "Successfully installed Jinja2-3.1.6 MarkupSafe-3.0.3 PyYAML-6.0.3 ansible-12.3.0 ansible-core-2.19.13 argon2-cffi-bindings-26.1.0 argon2_cffi-25.1.0 arrow-1.4.0 bcrypt-5.0.0 binaryornot-0.6.0 certifi-2026.7.22 cffi-2.1.1 charset_normalizer-3.5.2 click-8.5.0 colorama-0.4.6 construct-2.10.70 cookiecutter-2.7.1 cryptography-50.0.1 fasteners-0.20 idna-3.20 importlib-metadata-9.0.1 invoke-3.0.3 iso8601-2.1.0 loguru-0.7.3 lxml-6.1.3 markdown-it-py-4.2.0 mdurl-0.1.2 netaddr-1.3.0 oslo.i18n-6.9.0 oslo.utils-10.2.0 packaging-26.3 paramiko-5.0.0 passlib-1.7.4 pathspec-1.1.1 pbr-7.0.3 psutil-7.2.2 pwgen-0.8.2.post0 pycparser-3.0 pycryptodome-3.23.0 pycryptodomex-3.23.0 pygments-2.21.0 pykeepass-4.2.0 pynacl-1.6.2 pyotp-2.10.0 pyparsing-3.3.3 python-dateutil-2.9.0.post0 python-gilt-1.2.3 python-slugify-9.1.2 requests-2.34.2 resolvelib-1.2.1 rich-15.0.0 ruamel.yaml-0.19.1 sh-2.4.0 six-1.17.0 text-unidecode-1.3 tzdata-2026.4 urllib3-2.8.0 yamllint-1.38.0 zipp-4.1.0",
                                "cookiecutter: 49302 I exit 0 (48.42 seconds) /home/zuul/src/github.com/osism/cfg-cookiecutter> python -I -m pip install -r requirements.txt pid=1613 [tox/execute/api.py:337]",
                                "  cookiecutter: OK (49.03 seconds)",
                                "  congratulations :) (49.06 seconds)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-000000000053-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:41.008006Z",
                            "start": "2026-10-01T09:42:50.970152Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000053",
                        "name": "Run tox without tests"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "tempfile",
                            "changed": true,
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "path": null,
                                    "prefix": "ansible.",
                                    "state": "file",
                                    "suffix": ""
                                }
                            },
                            "mode": "0600",
                            "owner": "zuul",
                            "path": "/tmp/ansible.24fow3mg",
                            "size": 0,
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:41.450923Z",
                            "start": "2026-10-01T09:43:41.024897Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000054",
                        "name": "Create a tempfile to save tox showconfig"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "--version",
                                "--quiet"
                            ],
                            "delta": "0:00:00.342381",
                            "end": "2026-10-01 09:43:42.104763",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox --version --quiet",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/cfg-cookiecutter",
                                    "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-15f9-82c2-000000000055-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:43:41.762382",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "4.64.6 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py",
                            "stdout_lines": [
                                "4.64.6 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-000000000055-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:42.490261Z",
                            "start": "2026-10-01T09:43:41.480747Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000055",
                        "name": "Detect tox version"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "/home/zuul/.local/tox/bin/tox   config   -ecookiecutter  > /tmp/ansible.24fow3mg",
                            "delta": "0:00:00.371426",
                            "end": "2026-10-01 09:43:43.215387",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox   config   -ecookiecutter  > /tmp/ansible.24fow3mg",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/cfg-cookiecutter",
                                    "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-15f9-82c2-000000000056-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:43:42.843961",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-000000000056-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:43.546229Z",
                            "start": "2026-10-01T09:43:42.535757Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000056",
                        "name": "Get tox envlist config"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "tox_install_sibling_packages",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "project_dir": "src/github.com/osism/cfg-cookiecutter",
                                    "projects": [],
                                    "tox_constraints_file": null,
                                    "tox_package_name": null,
                                    "tox_show_config": "/tmp/ansible.24fow3mg"
                                }
                            },
                            "msg": "No setup.cfg, no action needed"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:44.012676Z",
                            "start": "2026-10-01T09:43:43.558150Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000057",
                        "name": "Install any sibling python packages"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/ansible.24fow3mg",
                                    "state": "absent"
                                },
                                "before": {
                                    "path": "/tmp/ansible.24fow3mg",
                                    "state": "file"
                                }
                            },
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/ansible.24fow3mg",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "absent",
                                    "unsafe_writes": false
                                }
                            },
                            "path": "/tmp/ansible.24fow3mg",
                            "state": "absent"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:44.439092Z",
                            "start": "2026-10-01T09:43:44.053421Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000058",
                        "name": "Remove tempfile"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "/home/zuul/.local/tox/bin/tox   -ecookiecutter  -vv --skip-missing-interpreters=false"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:43:44.487068Z",
                            "start": "2026-10-01T09:43:44.447709Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000012",
                        "name": "Emit tox command"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "-ecookiecutter",
                                "-vv",
                                "--skip-missing-interpreters=false"
                            ],
                            "delta": "0:00:22.316026",
                            "end": "2026-10-01 09:44:07.115411",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox   -ecookiecutter  -vv --skip-missing-interpreters=false",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/cfg-cookiecutter",
                                    "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-15f9-82c2-000000000014-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:43:44.799385",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "ROOT: 257 D setup logging to DEBUG on pid 1908 [tox/report.py:249]\ncookiecutter: 296 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]\ncookiecutter: 299 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]\ncookiecutter: 300 D filesystem is case-sensitive [python_discovery/_compat.py:18]\ncookiecutter: 304 D got python info of /usr/bin/python3.11 from /home/zuul/.cache/virtualenv/py_info/5/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:139]\ncookiecutter: 304 I proposed PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]\ncookiecutter: 304 D accepted PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]\ncookiecutter: 306 D symlink on filesystem does work [virtualenv/info.py:51]\ncookiecutter: 307 D filesystem is case-sensitive [virtualenv/info.py:28]\ncookiecutter: 347 W commands[0]> cookiecutter --no-input . openstack_version=2025.2 [tox/tox_env/api.py:500]\nosism.generics:\n  - cloning osism.generics to /home/zuul/.gilt/clone/github.com/osism.generics\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/gilt.yml to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./gilt.yml\nosism.generics:\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/gilt.yml to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./gilt.yml\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/requirements.txt to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./requirements.txt\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/Makefile to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./Makefile\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/images.yml to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/images.yml\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/run.sh to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/run.sh\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/ansible.cfg to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/ansible.cfg\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/requirements.txt to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/src/render-images.py to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/\n  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/src/set-versions.py to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/\n  - running `python3 render-images.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/\n  - running `rm render-images.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/\n  - running `python3 set-versions.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/\n  - running `rm set-versions.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/\nGenerating public/private rsa key pair.\nYour identification has been saved in secrets/id_rsa.operator\nYour public key has been saved in secrets/id_rsa.operator.pub\nThe key fingerprint is:\nSHA256:BKOpuUpckyPAJ2vtdL0ciZZNGGkoKUKcl4D0bzGju+8 \nThe key's randomart image is:\n+---[RSA 4096]----+\n|=++ o.+          |\n|==.+ =oo         |\n|+ooo+= ..        |\n|. =o+ X..        |\n| +oO B =S        |\n|o =.B . o        |\n| o.o   o         |\n|..  .            |\n|.  .oE           |\n+----[SHA256]-----+\nGenerating public/private rsa key pair.\nYour identification has been saved in secrets/id_rsa.configuration\nYour public key has been saved in secrets/id_rsa.configuration.pub\nThe key fingerprint is:\nSHA256:QM70X4LGrG22TU/APAORKbw+P4xyAqEYPaZdZ7td5vs \nThe key's randomart image is:\n+---[RSA 4096]----+\n|     .o o+       |\n|     =o+o=       |\n| .    +o* B .    |\n|. = . += . *     |\n|.* + +..S o .    |\n|+ o   +o +oo     |\n|   .   B.+. .    |\n|    o + = .      |\n|     +   ..oE    |\n+----[SHA256]-----+\n2026-10-01 09:43:59.809 | INFO     | __main__:<module>:40 - Prepare use of environments/kolla/secrets.yml\n2026-10-01 09:43:59.856 | INFO     | __main__:<module>:44 - Prepare use of environments/secrets.yml\n2026-10-01 09:43:59.858 | INFO     | __main__:<module>:48 - Prepare use of environments/ceph/secrets.yml\n2026-10-01 09:43:59.858 | INFO     | __main__:<module>:52 - Prepare use of environments/infrastructure/secrets.yml\n2026-10-01 09:43:59.860 | INFO     | __main__:<module>:56 - Prepare use of environments/kolla/secrets.yml\n2026-10-01 09:43:59.901 | INFO     | __main__:<module>:60 - Prepare use of environments/manager/secrets.yml\n2026-10-01 09:43:59.902 | INFO     | __main__:<module>:64 - Prepare use of environments/kubernetes/secrets.yml\n2026-10-01 09:43:59.902 | INFO     | __main__:<module>:68 - Prepare use of environments/monitoring/secrets.yml\n2026-10-01 09:43:59.903 | INFO     | __main__:<module>:72 - Prepare use of environments/openstack/secrets.yml\n2026-10-01 09:43:59.904 | INFO     | __main__:<module>:76 - Prepare use of environments/configuration.yml\n2026-10-01 09:43:59.907 | INFO     | __main__:<module>:80 - Prepare use of environments/ceph/configuration.yml\n2026-10-01 09:43:59.913 | INFO     | __main__:<module>:84 - Prepare use of environments/kolla/configuration.yml\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:89 - Set keystone_admin_password\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:93 - Set os_password_admin\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:93 - Set os_password_admin_system\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:93 - Set os_password_octavia\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:99 - Set ara_server_mariadb_password\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:106 - Set ara_password\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:120 - Set operator_password_unhashed\n2026-10-01 09:43:59.920 | INFO     | __main__:<module>:122 - Set operator_password\n2026-10-01 09:44:00.506 | INFO     | __main__:<module>:127 - Set ceph_cluster_fsid\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:129 - Set fsid\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:138 - Set k3s_token\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:147 - Set netbox_api_token\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:149 - Set manager_listener_broker_password\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:154 - Set netbox_user_api_token\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:156 - Set netbox_secret_key\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:163 - Set netbox_superuser_api_token\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:167 - Set netbox_superuser_password\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:175 - Set netdata_api_key\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:178 - Set ceph_rgw_keystone_password\n2026-10-01 09:44:00.507 | INFO     | __main__:<module>:183 - Set ceph_dashboard_password\n2026-10-01 09:44:00.508 | INFO     | __main__:<module>:191 - Write result to environments/secrets.yml\n2026-10-01 09:44:00.510 | INFO     | __main__:<module>:195 - Write result to environments/ceph/secrets.yml\n2026-10-01 09:44:00.510 | INFO     | __main__:<module>:199 - Write result to environments/infrastructure/secrets.yml\n2026-10-01 09:44:00.511 | INFO     | __main__:<module>:203 - Write result to environments/kolla/secrets.yml\n2026-10-01 09:44:00.546 | INFO     | __main__:<module>:207 - Write result to environments/manager/secrets.yml\n2026-10-01 09:44:00.547 | INFO     | __main__:<module>:211 - Write result to environments/kubernetes/secrets.yml\n2026-10-01 09:44:00.548 | INFO     | __main__:<module>:215 - Write result to environments/monitoring/secrets.yml\n2026-10-01 09:44:00.548 | INFO     | __main__:<module>:219 - Write result to environments/openstack/secrets.yml\n2026-10-01 09:44:00.549 | INFO     | __main__:<module>:223 - Write result to environments/configuration.yml\n2026-10-01 09:44:00.551 | INFO     | __main__:<module>:227 - Write result to environments/ceph/configuration.yml\n2026-10-01 09:44:00.554 | INFO     | __main__:<module>:231 - Write result to environments/kolla/configuration.yml\n2026-10-01 09:44:00.707 | INFO     | __main__:<module>:23 - Prepare use of environments/secrets.yml\n2026-10-01 09:44:00.711 | INFO     | __main__:<module>:28 - Prepare use of secrets/id_rsa.operator\n2026-10-01 09:44:00.711 | INFO     | __main__:<module>:32 - Set operator\n2026-10-01 09:44:00.711 | INFO     | __main__:<module>:28 - Prepare use of secrets/id_rsa.configuration\n2026-10-01 09:44:00.711 | INFO     | __main__:<module>:32 - Set configuration\n2026-10-01 09:44:00.712 | INFO     | __main__:<module>:35 - Write result to environments/secrets.yml\n2026-10-01 09:44:00.719 | INFO     | __main__:<module>:41 - Prepare use of environments/configuration.yml\n2026-10-01 09:44:00.723 | INFO     | __main__:<module>:45 - Prepare use of environments/manager/configuration.yml\n2026-10-01 09:44:00.727 | INFO     | __main__:<module>:55 - Set operator_public_key\n2026-10-01 09:44:00.727 | INFO     | __main__:<module>:64 - Set configuration_git_public_key\n2026-10-01 09:44:00.727 | INFO     | __main__:<module>:69 - Write result to environments/configuration.yml\n2026-10-01 09:44:00.730 | INFO     | __main__:<module>:73 - Write result to environments/manager/configuration.yml\ncookiecutter: 21633 I exit 0 (21.29 seconds) /home/zuul/src/github.com/osism/cfg-cookiecutter> cookiecutter --no-input . openstack_version=2025.2 pid=1915 [tox/execute/api.py:337]\ncookiecutter: 21634 W commands[1]> python3 scripts/check-kolla-secrets.py configuration [tox/tox_env/api.py:500]\n  OK   aodh_database_password\n  OK   aodh_keystone_password\n  OK   barbican_crypto_key\n  OK   barbican_database_password\n  OK   barbican_keystone_password\n  OK   barbican_p11_password\n  OK   bifrost_ssh_key.private_key\n  OK   bifrost_ssh_key.public_key\n  OK   blazar_database_password\n  OK   blazar_keystone_password\n  OK   ceilometer_database_password\n  OK   ceilometer_keystone_password\n  OK   ceph_rgw_keystone_password\n  OK   cinder_database_password\n  OK   cinder_keystone_password\n  OK   cinder_rbd_secret_uuid\n  OK   cloudkitty_database_password\n  OK   cloudkitty_keystone_password\n  OK   cyborg_database_password\n  OK   cyborg_keystone_password\n  OK   database_password\n  OK   designate_database_password\n  OK   designate_keystone_password\n  OK   designate_pool_id\n  OK   designate_rndc_key\n  SKIP docker_registry_password (intentionally blank)\n  OK   etcd_cluster_token\n  OK   glance_database_password\n  OK   glance_keystone_password\n  OK   gnocchi_database_password\n  OK   gnocchi_keystone_password\n  OK   gnocchi_project_id\n  OK   gnocchi_resource_id\n  OK   gnocchi_user_id\n  OK   grafana_admin_password\n  OK   grafana_database_password\n  OK   haproxy_password\n  OK   haproxy_ssh_key.private_key\n  OK   haproxy_ssh_key.public_key\n  OK   heat_database_password\n  OK   heat_domain_admin_password\n  OK   heat_keystone_password\n  OK   hnas_nfs_password\n  OK   horizon_database_password\n  OK   horizon_secret_key\n  OK   infoblox_admin_password\n  OK   ironic_database_password\n  OK   ironic_keystone_password\n  OK   keepalived_password\n  OK   keystone_admin_password\n  OK   keystone_database_password\n  OK   keystone_federation_openid_crypto_password\n  OK   keystone_ssh_key.private_key\n  OK   keystone_ssh_key.public_key\n  OK   kolla_ssh_key.private_key\n  OK   kolla_ssh_key.public_key\n  OK   kuryr_keystone_password\n  OK   libvirt_sasl_password\n  OK   magnum_database_password\n  OK   magnum_keystone_password\n  OK   manila_database_password\n  OK   manila_keystone_password\n  OK   mariadb_backup_database_password\n  OK   mariadb_monitor_password\n  OK   masakari_database_password\n  OK   masakari_keystone_password\n  OK   memcache_secret_key\n  OK   metadata_secret\n  OK   mistral_database_password\n  OK   mistral_keystone_password\n  OK   neutron_database_password\n  OK   neutron_keystone_password\n  OK   neutron_ssh_key.private_key\n  OK   neutron_ssh_key.public_key\n  OK   nova_api_database_password\n  OK   nova_database_password\n  OK   nova_keystone_password\n  OK   nova_ssh_key.private_key\n  OK   nova_ssh_key.public_key\n  OK   octavia_amp_ssh_key.private_key\n  OK   octavia_amp_ssh_key.public_key\n  OK   octavia_ca_password\n  OK   octavia_client_ca_password\n  OK   octavia_database_password\n  OK   octavia_keystone_password\n  OK   octavia_persistence_database_password\n  OK   opensearch_dashboards_password\n  OK   osprofiler_secret\n  OK   placement_database_password\n  OK   placement_keystone_password\n  OK   prometheus_alertmanager_password\n  OK   prometheus_bcrypt_salt\n  OK   prometheus_grafana_password\n  OK   prometheus_haproxy_password\n  OK   prometheus_mysql_exporter_database_password\n  OK   prometheus_password\n  OK   prometheus_skyline_password\n  OK   proxysql_admin_password\n  OK   proxysql_stats_password\n  OK   rabbitmq_cluster_cookie\n  OK   rabbitmq_monitoring_password\n  OK   rabbitmq_password\n  OK   rbd_secret_uuid\n  OK   redis_master_password\n  OK   skyline_database_password\n  OK   skyline_keystone_password\n  OK   skyline_secret_key\n  OK   tacker_database_password\n  OK   tacker_keystone_password\n  OK   telemetry_secret_key\n  OK   trove_database_password\n  OK   trove_keystone_password\n  OK   valkey_master_password\n  OK   watcher_database_password\n  OK   watcher_keystone_password\n  OK   zun_database_password\n  OK   zun_keystone_password\n\nOK: All 110 secrets in environments/kolla/secrets.yml are set.\ncookiecutter: 22226 I exit 0 (0.59 seconds) /home/zuul/src/github.com/osism/cfg-cookiecutter> python3 scripts/check-kolla-secrets.py configuration pid=2160 [tox/execute/api.py:337]\n  cookiecutter: OK (21.94=setup[0.06]+cmd[21.29,0.59] seconds)\n  congratulations :) (21.97 seconds)",
                            "stdout_lines": [
                                "ROOT: 257 D setup logging to DEBUG on pid 1908 [tox/report.py:249]",
                                "cookiecutter: 296 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]",
                                "cookiecutter: 299 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]",
                                "cookiecutter: 300 D filesystem is case-sensitive [python_discovery/_compat.py:18]",
                                "cookiecutter: 304 D got python info of /usr/bin/python3.11 from /home/zuul/.cache/virtualenv/py_info/5/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:139]",
                                "cookiecutter: 304 I proposed PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]",
                                "cookiecutter: 304 D accepted PythonInfo(spec=CPython3.11.2.final.0-64-x86_64, system=/usr/bin/python3.11, exe=/home/zuul/.local/tox/bin/python3, platform=linux, version='3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]",
                                "cookiecutter: 306 D symlink on filesystem does work [virtualenv/info.py:51]",
                                "cookiecutter: 307 D filesystem is case-sensitive [virtualenv/info.py:28]",
                                "cookiecutter: 347 W commands[0]> cookiecutter --no-input . openstack_version=2025.2 [tox/tox_env/api.py:500]",
                                "osism.generics:",
                                "  - cloning osism.generics to /home/zuul/.gilt/clone/github.com/osism.generics",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/gilt.yml to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./gilt.yml",
                                "osism.generics:",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/gilt.yml to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./gilt.yml",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/requirements.txt to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./requirements.txt",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/Makefile to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/./Makefile",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/images.yml to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/images.yml",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/run.sh to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/run.sh",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/ansible.cfg to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/ansible.cfg",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/environments/manager/requirements.txt to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/src/render-images.py to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/",
                                "  - copied (main) /home/zuul/.gilt/clone/github.com/osism.generics/src/set-versions.py to /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/",
                                "  - running `python3 render-images.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/",
                                "  - running `rm render-images.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/manager/",
                                "  - running `python3 set-versions.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/",
                                "  - running `rm set-versions.py` in /home/zuul/src/github.com/osism/cfg-cookiecutter/configuration/environments/",
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in secrets/id_rsa.operator",
                                "Your public key has been saved in secrets/id_rsa.operator.pub",
                                "The key fingerprint is:",
                                "SHA256:BKOpuUpckyPAJ2vtdL0ciZZNGGkoKUKcl4D0bzGju+8 ",
                                "The key's randomart image is:",
                                "+---[RSA 4096]----+",
                                "|=++ o.+          |",
                                "|==.+ =oo         |",
                                "|+ooo+= ..        |",
                                "|. =o+ X..        |",
                                "| +oO B =S        |",
                                "|o =.B . o        |",
                                "| o.o   o         |",
                                "|..  .            |",
                                "|.  .oE           |",
                                "+----[SHA256]-----+",
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in secrets/id_rsa.configuration",
                                "Your public key has been saved in secrets/id_rsa.configuration.pub",
                                "The key fingerprint is:",
                                "SHA256:QM70X4LGrG22TU/APAORKbw+P4xyAqEYPaZdZ7td5vs ",
                                "The key's randomart image is:",
                                "+---[RSA 4096]----+",
                                "|     .o o+       |",
                                "|     =o+o=       |",
                                "| .    +o* B .    |",
                                "|. = . += . *     |",
                                "|.* + +..S o .    |",
                                "|+ o   +o +oo     |",
                                "|   .   B.+. .    |",
                                "|    o + = .      |",
                                "|     +   ..oE    |",
                                "+----[SHA256]-----+",
                                "2026-10-01 09:43:59.809 | INFO     | __main__:<module>:40 - Prepare use of environments/kolla/secrets.yml",
                                "2026-10-01 09:43:59.856 | INFO     | __main__:<module>:44 - Prepare use of environments/secrets.yml",
                                "2026-10-01 09:43:59.858 | INFO     | __main__:<module>:48 - Prepare use of environments/ceph/secrets.yml",
                                "2026-10-01 09:43:59.858 | INFO     | __main__:<module>:52 - Prepare use of environments/infrastructure/secrets.yml",
                                "2026-10-01 09:43:59.860 | INFO     | __main__:<module>:56 - Prepare use of environments/kolla/secrets.yml",
                                "2026-10-01 09:43:59.901 | INFO     | __main__:<module>:60 - Prepare use of environments/manager/secrets.yml",
                                "2026-10-01 09:43:59.902 | INFO     | __main__:<module>:64 - Prepare use of environments/kubernetes/secrets.yml",
                                "2026-10-01 09:43:59.902 | INFO     | __main__:<module>:68 - Prepare use of environments/monitoring/secrets.yml",
                                "2026-10-01 09:43:59.903 | INFO     | __main__:<module>:72 - Prepare use of environments/openstack/secrets.yml",
                                "2026-10-01 09:43:59.904 | INFO     | __main__:<module>:76 - Prepare use of environments/configuration.yml",
                                "2026-10-01 09:43:59.907 | INFO     | __main__:<module>:80 - Prepare use of environments/ceph/configuration.yml",
                                "2026-10-01 09:43:59.913 | INFO     | __main__:<module>:84 - Prepare use of environments/kolla/configuration.yml",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:89 - Set keystone_admin_password",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:93 - Set os_password_admin",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:93 - Set os_password_admin_system",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:93 - Set os_password_octavia",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:99 - Set ara_server_mariadb_password",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:106 - Set ara_password",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:120 - Set operator_password_unhashed",
                                "2026-10-01 09:43:59.920 | INFO     | __main__:<module>:122 - Set operator_password",
                                "2026-10-01 09:44:00.506 | INFO     | __main__:<module>:127 - Set ceph_cluster_fsid",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:129 - Set fsid",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:138 - Set k3s_token",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:147 - Set netbox_api_token",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:149 - Set manager_listener_broker_password",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:154 - Set netbox_user_api_token",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:156 - Set netbox_secret_key",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:163 - Set netbox_superuser_api_token",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:167 - Set netbox_superuser_password",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:175 - Set netdata_api_key",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:178 - Set ceph_rgw_keystone_password",
                                "2026-10-01 09:44:00.507 | INFO     | __main__:<module>:183 - Set ceph_dashboard_password",
                                "2026-10-01 09:44:00.508 | INFO     | __main__:<module>:191 - Write result to environments/secrets.yml",
                                "2026-10-01 09:44:00.510 | INFO     | __main__:<module>:195 - Write result to environments/ceph/secrets.yml",
                                "2026-10-01 09:44:00.510 | INFO     | __main__:<module>:199 - Write result to environments/infrastructure/secrets.yml",
                                "2026-10-01 09:44:00.511 | INFO     | __main__:<module>:203 - Write result to environments/kolla/secrets.yml",
                                "2026-10-01 09:44:00.546 | INFO     | __main__:<module>:207 - Write result to environments/manager/secrets.yml",
                                "2026-10-01 09:44:00.547 | INFO     | __main__:<module>:211 - Write result to environments/kubernetes/secrets.yml",
                                "2026-10-01 09:44:00.548 | INFO     | __main__:<module>:215 - Write result to environments/monitoring/secrets.yml",
                                "2026-10-01 09:44:00.548 | INFO     | __main__:<module>:219 - Write result to environments/openstack/secrets.yml",
                                "2026-10-01 09:44:00.549 | INFO     | __main__:<module>:223 - Write result to environments/configuration.yml",
                                "2026-10-01 09:44:00.551 | INFO     | __main__:<module>:227 - Write result to environments/ceph/configuration.yml",
                                "2026-10-01 09:44:00.554 | INFO     | __main__:<module>:231 - Write result to environments/kolla/configuration.yml",
                                "2026-10-01 09:44:00.707 | INFO     | __main__:<module>:23 - Prepare use of environments/secrets.yml",
                                "2026-10-01 09:44:00.711 | INFO     | __main__:<module>:28 - Prepare use of secrets/id_rsa.operator",
                                "2026-10-01 09:44:00.711 | INFO     | __main__:<module>:32 - Set operator",
                                "2026-10-01 09:44:00.711 | INFO     | __main__:<module>:28 - Prepare use of secrets/id_rsa.configuration",
                                "2026-10-01 09:44:00.711 | INFO     | __main__:<module>:32 - Set configuration",
                                "2026-10-01 09:44:00.712 | INFO     | __main__:<module>:35 - Write result to environments/secrets.yml",
                                "2026-10-01 09:44:00.719 | INFO     | __main__:<module>:41 - Prepare use of environments/configuration.yml",
                                "2026-10-01 09:44:00.723 | INFO     | __main__:<module>:45 - Prepare use of environments/manager/configuration.yml",
                                "2026-10-01 09:44:00.727 | INFO     | __main__:<module>:55 - Set operator_public_key",
                                "2026-10-01 09:44:00.727 | INFO     | __main__:<module>:64 - Set configuration_git_public_key",
                                "2026-10-01 09:44:00.727 | INFO     | __main__:<module>:69 - Write result to environments/configuration.yml",
                                "2026-10-01 09:44:00.730 | INFO     | __main__:<module>:73 - Write result to environments/manager/configuration.yml",
                                "cookiecutter: 21633 I exit 0 (21.29 seconds) /home/zuul/src/github.com/osism/cfg-cookiecutter> cookiecutter --no-input . openstack_version=2025.2 pid=1915 [tox/execute/api.py:337]",
                                "cookiecutter: 21634 W commands[1]> python3 scripts/check-kolla-secrets.py configuration [tox/tox_env/api.py:500]",
                                "  OK   aodh_database_password",
                                "  OK   aodh_keystone_password",
                                "  OK   barbican_crypto_key",
                                "  OK   barbican_database_password",
                                "  OK   barbican_keystone_password",
                                "  OK   barbican_p11_password",
                                "  OK   bifrost_ssh_key.private_key",
                                "  OK   bifrost_ssh_key.public_key",
                                "  OK   blazar_database_password",
                                "  OK   blazar_keystone_password",
                                "  OK   ceilometer_database_password",
                                "  OK   ceilometer_keystone_password",
                                "  OK   ceph_rgw_keystone_password",
                                "  OK   cinder_database_password",
                                "  OK   cinder_keystone_password",
                                "  OK   cinder_rbd_secret_uuid",
                                "  OK   cloudkitty_database_password",
                                "  OK   cloudkitty_keystone_password",
                                "  OK   cyborg_database_password",
                                "  OK   cyborg_keystone_password",
                                "  OK   database_password",
                                "  OK   designate_database_password",
                                "  OK   designate_keystone_password",
                                "  OK   designate_pool_id",
                                "  OK   designate_rndc_key",
                                "  SKIP docker_registry_password (intentionally blank)",
                                "  OK   etcd_cluster_token",
                                "  OK   glance_database_password",
                                "  OK   glance_keystone_password",
                                "  OK   gnocchi_database_password",
                                "  OK   gnocchi_keystone_password",
                                "  OK   gnocchi_project_id",
                                "  OK   gnocchi_resource_id",
                                "  OK   gnocchi_user_id",
                                "  OK   grafana_admin_password",
                                "  OK   grafana_database_password",
                                "  OK   haproxy_password",
                                "  OK   haproxy_ssh_key.private_key",
                                "  OK   haproxy_ssh_key.public_key",
                                "  OK   heat_database_password",
                                "  OK   heat_domain_admin_password",
                                "  OK   heat_keystone_password",
                                "  OK   hnas_nfs_password",
                                "  OK   horizon_database_password",
                                "  OK   horizon_secret_key",
                                "  OK   infoblox_admin_password",
                                "  OK   ironic_database_password",
                                "  OK   ironic_keystone_password",
                                "  OK   keepalived_password",
                                "  OK   keystone_admin_password",
                                "  OK   keystone_database_password",
                                "  OK   keystone_federation_openid_crypto_password",
                                "  OK   keystone_ssh_key.private_key",
                                "  OK   keystone_ssh_key.public_key",
                                "  OK   kolla_ssh_key.private_key",
                                "  OK   kolla_ssh_key.public_key",
                                "  OK   kuryr_keystone_password",
                                "  OK   libvirt_sasl_password",
                                "  OK   magnum_database_password",
                                "  OK   magnum_keystone_password",
                                "  OK   manila_database_password",
                                "  OK   manila_keystone_password",
                                "  OK   mariadb_backup_database_password",
                                "  OK   mariadb_monitor_password",
                                "  OK   masakari_database_password",
                                "  OK   masakari_keystone_password",
                                "  OK   memcache_secret_key",
                                "  OK   metadata_secret",
                                "  OK   mistral_database_password",
                                "  OK   mistral_keystone_password",
                                "  OK   neutron_database_password",
                                "  OK   neutron_keystone_password",
                                "  OK   neutron_ssh_key.private_key",
                                "  OK   neutron_ssh_key.public_key",
                                "  OK   nova_api_database_password",
                                "  OK   nova_database_password",
                                "  OK   nova_keystone_password",
                                "  OK   nova_ssh_key.private_key",
                                "  OK   nova_ssh_key.public_key",
                                "  OK   octavia_amp_ssh_key.private_key",
                                "  OK   octavia_amp_ssh_key.public_key",
                                "  OK   octavia_ca_password",
                                "  OK   octavia_client_ca_password",
                                "  OK   octavia_database_password",
                                "  OK   octavia_keystone_password",
                                "  OK   octavia_persistence_database_password",
                                "  OK   opensearch_dashboards_password",
                                "  OK   osprofiler_secret",
                                "  OK   placement_database_password",
                                "  OK   placement_keystone_password",
                                "  OK   prometheus_alertmanager_password",
                                "  OK   prometheus_bcrypt_salt",
                                "  OK   prometheus_grafana_password",
                                "  OK   prometheus_haproxy_password",
                                "  OK   prometheus_mysql_exporter_database_password",
                                "  OK   prometheus_password",
                                "  OK   prometheus_skyline_password",
                                "  OK   proxysql_admin_password",
                                "  OK   proxysql_stats_password",
                                "  OK   rabbitmq_cluster_cookie",
                                "  OK   rabbitmq_monitoring_password",
                                "  OK   rabbitmq_password",
                                "  OK   rbd_secret_uuid",
                                "  OK   redis_master_password",
                                "  OK   skyline_database_password",
                                "  OK   skyline_keystone_password",
                                "  OK   skyline_secret_key",
                                "  OK   tacker_database_password",
                                "  OK   tacker_keystone_password",
                                "  OK   telemetry_secret_key",
                                "  OK   trove_database_password",
                                "  OK   trove_keystone_password",
                                "  OK   valkey_master_password",
                                "  OK   watcher_database_password",
                                "  OK   watcher_keystone_password",
                                "  OK   zun_database_password",
                                "  OK   zun_keystone_password",
                                "",
                                "OK: All 110 secrets in environments/kolla/secrets.yml are set.",
                                "cookiecutter: 22226 I exit 0 (0.59 seconds) /home/zuul/src/github.com/osism/cfg-cookiecutter> python3 scripts/check-kolla-secrets.py configuration pid=2160 [tox/execute/api.py:337]",
                                "  cookiecutter: OK (21.94=setup[0.06]+cmd[21.29,0.59] seconds)",
                                "  congratulations :) (21.97 seconds)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-15f9-82c2-000000000014-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:07.542165Z",
                            "start": "2026-10-01T09:43:44.511869Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000014",
                        "name": "Run tox"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "tox_parse_output",
                            "changed": false,
                            "failed_when_result": false,
                            "file_comments": {},
                            "invocation": {
                                "module_args": {
                                    "tox_envlist": "cookiecutter",
                                    "tox_output": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
                                    "workdir": "src/github.com/osism/cfg-cookiecutter"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:07.957495Z",
                            "start": "2026-10-01T09:44:07.555379Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000015",
                        "name": "Look for output"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "zuul_return",
                            "changed": false,
                            "false_condition": "file_comments.file_comments",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-15f9-82c2-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:08.009676Z",
                            "start": "2026-10-01T09:44:07.973508Z"
                        },
                        "id": "0242ac1f-6606-15f9-82c2-000000000016",
                        "name": "Return file comments to Zuul"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 9,
            "failures": 0,
            "ignored": 0,
            "ok": 13,
            "rescued": 0,
            "skipped": 4,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "master",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/osism/openinfra-zuul-jobs/playbooks/tox/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:44:12.715475Z",
                    "start": "2026-10-01T09:44:08.893060Z"
                },
                "id": "0242ac1f-6606-b40e-ab60-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "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-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:08.964199Z",
                            "start": "2026-10-01T09:44:08.908094Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-000000000007",
                        "name": "Set tox log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:09.022076Z",
                            "start": "2026-10-01T09:44:08.976185Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-000000000008",
                        "name": "Set tox log path for single node"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox",
                                    "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/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox",
                                    "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/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:09.505119Z",
                            "start": "2026-10-01T09:44:09.029338Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-000000000009",
                        "name": "Ensure local tox dir"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "false_condition": "zuul_use_fetch_output",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:09.564494Z",
                            "start": "2026-10-01T09:44:09.519593Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-00000000000a",
                        "name": "Ensure zuul-output tox dir"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "envlist": [
                                    "cookiecutter"
                                ]
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:09.622652Z",
                            "start": "2026-10-01T09:44:09.575143Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-00000000000b",
                        "name": "Set envlist fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "--version"
                            ],
                            "delta": "0:00:00.352592",
                            "end": "2026-10-01 09:44:10.411820",
                            "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-b40e-ab60-00000000000c-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-10-01 09:44:10.059228",
                            "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.64.6 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.64.6 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-b40e-ab60-00000000000c-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:10.667265Z",
                            "start": "2026-10-01T09:44:09.655739Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-00000000000c",
                        "name": "Get tox version"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "tox_envlist is not defined or not tox_envlist",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:11.212039Z",
                            "start": "2026-10-01T09:44:10.702518Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-00000000000d",
                        "name": "Find all default environments"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "tox_default_environments.stdout_lines is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:11.261327Z",
                            "start": "2026-10-01T09:44:11.224964Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-00000000000e",
                        "name": "Set envlist fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "(tox_envlist is defined and tox_envlist == 'ALL') or (envlist is defined and not envlist)",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:11.806273Z",
                            "start": "2026-10-01T09:44:11.297278Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-00000000000f",
                        "name": "Find all default environments"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "tox_all_environments.stdout_lines is defined",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:11.855287Z",
                            "start": "2026-10-01T09:44:11.818861Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-000000000010",
                        "name": "Set envlist fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": false,
                            "msg": "All items skipped",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_testenv",
                                    "changed": false,
                                    "false_condition": "zuul_use_fetch_output",
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true,
                                    "zj_testenv": "cookiecutter"
                                }
                            ],
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:11.924398Z",
                            "start": "2026-10-01T09:44:11.868518Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-000000000011",
                        "name": "Copy tox logs"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_testenv",
                                    "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:fecf:5f95]:src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/log/' /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox/cookiecutter",
                                    "failed": false,
                                    "failed_when_result": 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/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox/cookiecutter",
                                            "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:fecf:5f95]:src/github.com/osism/cfg-cookiecutter/.tox/cookiecutter/log/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": "created directory /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox/cookiecutter\ncd+++++++++ ./\n>f+++++++++ 1-commands[0].log\n>f+++++++++ 2-commands[1].log\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        "created directory /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/tox/cookiecutter",
                                        "cd+++++++++ ./",
                                        ">f+++++++++ 1-commands[0].log",
                                        ">f+++++++++ 2-commands[1].log"
                                    ],
                                    "zj_testenv": "cookiecutter"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-b40e-ab60-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:12.715475Z",
                            "start": "2026-10-01T09:44:11.938906Z"
                        },
                        "id": "0242ac1f-6606-b40e-ab60-000000000013",
                        "name": "Collect tox logs"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 5,
            "rescued": 0,
            "skipped": 7,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "master",
    "index": "1",
    "phase": "post",
    "playbook": "github.com/osism/openinfra-zuul-jobs/playbooks/unittests/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:44:14.070630Z",
                    "start": "2026-10-01T09:44:13.565016Z"
                },
                "id": "0242ac1f-6606-f559-7713-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "script",
                            "changed": true,
                            "exception": "NoneType: None\n",
                            "failed_when_result": false,
                            "msg": "non-zero return code",
                            "rc": 1,
                            "stderr": "Shared connection to 2a13:1a81:8000:3124:f816:3eff:fecf:5f95 closed.\r\n",
                            "stderr_lines": [
                                "Shared connection to 2a13:1a81:8000:3124:f816:3eff:fecf:5f95 closed."
                            ],
                            "stdout": "",
                            "stdout_lines": []
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:13.763656Z",
                            "start": "2026-10-01T09:44:13.580631Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-000000000007",
                        "name": "Find stestr or testr executable"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:13.805972Z",
                            "start": "2026-10-01T09:44:13.769611Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-000000000009",
                        "name": "Get the list of directories with subunit files"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "find",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:13.846904Z",
                            "start": "2026-10-01T09:44:13.820393Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-00000000000a",
                        "name": "Find any inflight partial subunit files"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:13.899826Z",
                            "start": "2026-10-01T09:44:13.863882Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-00000000000c",
                        "name": "Copy any inflight subunit files"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "tempfile",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:13.938879Z",
                            "start": "2026-10-01T09:44:13.913951Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-00000000000f",
                        "name": "Create a temporary file to store the subunit stream"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:13.971036Z",
                            "start": "2026-10-01T09:44:13.946778Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-000000000010",
                        "name": "Generate subunit file"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:14.001717Z",
                            "start": "2026-10-01T09:44:13.977162Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-000000000012",
                        "name": "Copy the combined subunit file to the zuul work directory"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:14.032100Z",
                            "start": "2026-10-01T09:44:14.007869Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-000000000013",
                        "name": "Remove the temporary file"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "testr_command.rc == 0",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f559-7713-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:14.070630Z",
                            "start": "2026-10-01T09:44:14.045160Z"
                        },
                        "id": "0242ac1f-6606-f559-7713-000000000014",
                        "name": "Process and fetch subunit results"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "rescued": 0,
            "skipped": 8,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "2",
    "phase": "post",
    "playbook": "github.com/osism/zuul-config/playbooks/base/post-fetch.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:44:43.513053Z",
                    "start": "2026-10-01T09:44:14.999502Z"
                },
                "id": "0242ac1f-6606-d35e-0847-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-d35e-0847-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:15.476512Z",
                            "start": "2026-10-01T09:44:15.013832Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-000000000009",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j305578848521.2230",
                            "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:05.911251",
                            "end": "2026-10-01 09:44:22.345151",
                            "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-d35e-0847-00000000000a-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "results_file": "/home/zuul/.ansible_async/j305578848521.2230",
                            "start": "2026-10-01 09:44:16.433900",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-d35e-0847-00000000000a-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:27.419065Z",
                            "start": "2026-10-01T09:44:15.488695Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-00000000000a",
                        "name": "Snapshot dual-stack network state (post)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j404431974840.2336",
                            "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.004530",
                            "end": "2026-10-01 09:44:28.087470",
                            "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-d35e-0847-00000000000b-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results_file": "/home/zuul/.ansible_async/j404431974840.2336",
                            "start": "2026-10-01 09:44:28.082940",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-d35e-0847-00000000000b-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:33.395553Z",
                            "start": "2026-10-01T09:44:27.427470Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-00000000000b",
                        "name": "Snapshot Docker/BuildKit IPv6 config (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "ansible_job_id": "j135346311409.2371",
                            "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.005384",
                            "end": "2026-10-01 09:44:34.067362",
                            "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-d35e-0847-00000000000c-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "results_file": "/home/zuul/.ansible_async/j135346311409.2371",
                            "start": "2026-10-01 09:44:34.061978",
                            "started": 1,
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-d35e-0847-00000000000c-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:39.418743Z",
                            "start": "2026-10-01T09:44:33.402569Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-00000000000c",
                        "name": "Probe container network namespace (teardown)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": false,
                            "false_condition": "diagnose_network_phase == \"pre\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:39.958350Z",
                            "start": "2026-10-01T09:44:39.447648Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-00000000000d",
                        "name": "Evaluate node isolation verdict (pre-run gate)"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.fail",
                            "changed": false,
                            "false_condition": "diagnose_network_phase == \"pre\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000007",
                        "name": "diagnose-network",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-network"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:40.030084Z",
                            "start": "2026-10-01T09:44:39.973424Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-00000000000e",
                        "name": "Abort the pre-run on a fully isolated node"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:40.095117Z",
                            "start": "2026-10-01T09:44:40.049810Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-000000000012",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:40.145514Z",
                            "start": "2026-10-01T09:44:40.106013Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-000000000013",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:41.029797Z",
                            "start": "2026-10-01T09:44:40.153105Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-000000000014",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' '[zuul@2a13:1a81:8000:3124:f816:3eff:fecf:5f95]:/home/zuul/zuul-output/logs/' /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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:fecf:5f95]:/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/47bab76beefc48d8a47ce77b76efac4d/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:fecf:5f95]:/home/zuul/zuul-output/artifacts/' /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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:fecf:5f95]:/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/47bab76beefc48d8a47ce77b76efac4d/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:fecf:5f95]:/home/zuul/zuul-output/docs/' /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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:fecf:5f95]:/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/47bab76beefc48d8a47ce77b76efac4d/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000010",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:42.902477Z",
                            "start": "2026-10-01T09:44:41.038640Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-000000000016",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/artifacts/* /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.007505",
                                    "end": "2026-10-01 09:44:43.212844",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/artifacts/* /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/artifacts\nfi\n",
                                            "_uses_shell": true,
                                            "argv": null,
                                            "chdir": null,
                                            "creates": null,
                                            "executable": null,
                                            "expand_argument_vars": true,
                                            "removes": null,
                                            "stdin": null,
                                            "stdin_add_newline": true,
                                            "strip_empty_ends": true,
                                            "zuul_ansible_split_streams": false,
                                            "zuul_log_id": "in-loop-ignore",
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-10-01 09:44:43.205339",
                                    "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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/docs/* /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.009968",
                                    "end": "2026-10-01 09:44:43.468965",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/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/47bab76beefc48d8a47ce77b76efac4d/work/docs/* /var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/work/logs/docs\nfi\n",
                                            "_uses_shell": true,
                                            "argv": null,
                                            "chdir": null,
                                            "creates": null,
                                            "executable": null,
                                            "expand_argument_vars": true,
                                            "removes": null,
                                            "stdin": null,
                                            "stdin_add_newline": true,
                                            "strip_empty_ends": true,
                                            "zuul_ansible_split_streams": false,
                                            "zuul_log_id": "in-loop-ignore",
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-10-01 09:44:43.458997",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-d35e-0847-000000000019",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:43.513053Z",
                            "start": "2026-10-01T09:44:42.921228Z"
                        },
                        "id": "0242ac1f-6606-d35e-0847-00000000001b",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 8,
            "rescued": 0,
            "skipped": 3,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "3",
    "phase": "post",
    "playbook": "github.com/osism/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-10-01T09:44:45.096987Z",
                    "start": "2026-10-01T09:44:44.377483Z"
                },
                "id": "0242ac1f-6606-4086-b032-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDjvAaRPzidGqPXT9Ox4OPZSY6uNrli3J5VHF6KbwtVdN3KrFFNYhxWRfedU6ji6nhHTy6KHOJookxzG2APQ7wrn5Bb33ketCT7w5nWxJQf7TzqthIps+AfDVbxvdWAughEZ+IEB0gaJxsKUhyHg4Gd/e0B0DeT5E9Pr6prtvd0U7nTRAtDd90Qxqz7hhyQb7lnueCzKQxVocyx/h8ApGkuAT6DgIT8BTt8QIge8p6E2XwTkg28jb/WMblpkI2VejmR9x6SyfXNB/XEdezgu6DdYHm3SoStrgoWdMmOYCzaPhGlkLaThhEwE/IlmbPHMn8D6xJJ//kqOa9G58EMWK5uli0vyeRn93Da8WnkUAPU0+R/oGkdgU4W1un1O8zP8fAp+/uzLm1+rhP/EVk9/HOf4bVRvS9KJgkbZgSw1P7e1q98ZJo+FXYzbwzA9n6RvqwrudzFHxVjYZi+LJn4t6h0sy4KNL78WispxYr+FN67k13WPLZEezyIrbSrbuvdOZs= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDjvAaRPzidGqPXT9Ox4OPZSY6uNrli3J5VHF6KbwtVdN3KrFFNYhxWRfedU6ji6nhHTy6KHOJookxzG2APQ7wrn5Bb33ketCT7w5nWxJQf7TzqthIps+AfDVbxvdWAughEZ+IEB0gaJxsKUhyHg4Gd/e0B0DeT5E9Pr6prtvd0U7nTRAtDd90Qxqz7hhyQb7lnueCzKQxVocyx/h8ApGkuAT6DgIT8BTt8QIge8p6E2XwTkg28jb/WMblpkI2VejmR9x6SyfXNB/XEdezgu6DdYHm3SoStrgoWdMmOYCzaPhGlkLaThhEwE/IlmbPHMn8D6xJJ//kqOa9G58EMWK5uli0vyeRn93Da8WnkUAPU0+R/oGkdgU4W1un1O8zP8fAp+/uzLm1+rhP/EVk9/HOf4bVRvS9KJgkbZgSw1P7e1q98ZJo+FXYzbwzA9n6RvqwrudzFHxVjYZi+LJn4t6h0sy4KNL78WispxYr+FN67k13WPLZEezyIrbSrbuvdOZs= 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-4086-b032-000000000005",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/47bab76beefc48d8a47ce77b76efac4d/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-10-01T09:44:45.096987Z",
                            "start": "2026-10-01T09:44:44.390984Z"
                        },
                        "id": "0242ac1f-6606-4086-b032-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
}
]
