[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/osism/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-26T20:45:17.163178Z",
                    "start": "2026-05-26T20:44:59.103927Z"
                },
                "id": "0242ac1f-6606-97bf-e7dd-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-97bf-e7dd-00000000000c",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:44:59.152609Z",
                            "start": "2026-05-26T20:44:59.121555Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000000e",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "2fc/osism/2fc294d2943c412681714244132e0a50"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000a6",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:44:59.213937Z",
                            "start": "2026-05-26T20:44:59.184697Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000a8",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.14\nJob: openstack-project-manager-tox\nPipeline: check\nExecutor: 521e9411259a\nTriggered by: https://github.com/osism/openstack-project-manager/pull/284\nEvent ID: b8651830-5943-11f1-9421-0d170f3335ef\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-00000000000c",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:44:59.276508Z",
                            "start": "2026-05-26T20:44:59.226506Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000000f",
                        "name": "Print job information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": false,
                                    "failed": false,
                                    "msg": "# Node Information\nInventory Hostname: debian-bookworm\nHostname: debian\nUsername: zuul\nDistro: Debian 12.14\nProvider: regiocloud-a\nRegion: \nLabel: debian-bookworm\nProduct Name: OpenStack Nova\nInterface IP: 2a13:1a81:8000:3124:f816:3eff:feb8:ba4f\n",
                                    "zj_item": "debian-bookworm"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-00000000000c",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:44:59.402257Z",
                            "start": "2026-05-26T20:44:59.282292Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000010",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000013",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:00.141989Z",
                            "start": "2026-05-26T20:44:59.417126Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000015",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "2e012c75251baf3ad371dc251e4ffd2a72891fc0",
                            "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "2e012c75251baf3ad371dc251e4ffd2a72891fc0",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/.ansible/tmp/ansible-tmp-1779828300.249776-34-172431757076749/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "3b14b67253b1875b49b7139b96975e20",
                            "mode": "0644",
                            "owner": "root",
                            "size": 61837,
                            "src": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/.ansible/tmp/ansible-tmp-1779828300.249776-34-172431757076749/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000013",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:01.684079Z",
                            "start": "2026-05-26T20:45:00.153087Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000016",
                        "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/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:01.994974Z",
                            "start": "2026-05-26T20:45:01.697306Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000001a",
                        "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-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:02.032809Z",
                            "start": "2026-05-26T20:45:02.001205Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000001b",
                        "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/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:03.336083",
                            "end": "2026-05-26 20:45:06.141809",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_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-97bf-e7dd-0000000000c9-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:02.805726",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa.pub\nThe key fingerprint is:\nSHA256:JI3YqzkCGgNP603ZWYTazXWOuX9wfXheiwkMYsAasS4 zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|   .o  ..        |\n|   ..=.+  . .    |\n|. ..+o=o+. =     |\n|.o.o.o.Oo.o .    |\n|+Eo.o = S o.   o |\n|.=.o o    .o. o =|\n|. o =      ..ooo+|\n|   . .      .o...|\n|             .   |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:JI3YqzkCGgNP603ZWYTazXWOuX9wfXheiwkMYsAasS4 zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|   .o  ..        |",
                                "|   ..=.+  . .    |",
                                "|. ..+o=o+. =     |",
                                "|.o.o.o.Oo.o .    |",
                                "|+Eo.o = S o.   o |",
                                "|.=.o o    .o. o =|",
                                "|. o =      ..ooo+|",
                                "|   . .      .o...|",
                                "|             .   |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac1f-6606-97bf-e7dd-0000000000c9-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:06.173994Z",
                            "start": "2026-05-26T20:45:02.075885Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000c9",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:06.217319Z",
                            "start": "2026-05-26T20:45:06.179846Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000ca",
                        "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-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:06.284373Z",
                            "start": "2026-05-26T20:45:06.251136Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000e9",
                        "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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDb4KwpySBQPJduob/YMvy/ccj6MgnAcYltfMKT29TzbaNzly1oe0J/ghdT+gEx+SP/BwwHhtfnqrHx5Qn9sfao8z1UVposY1vWEwujG6UjBM7dRK6HgkpNcSRFt6H7INOoQd0iz7TSopJgS+zamjrVVk4FDbj+K3XSF1kbyQesP6045tL8jUfH5gRQqyJ/G9PzZkM4F9VXiISGBQclicbeRCJglCZT/GDGfifSBerRJ+tR/c78TqRPbgCUy/YumDmNGoqPppEVlK/reIUP2v2YqYl/MIC50kNkzMEDD7xnJ4sypkwnFfk762mG3QhEYD2azBRsUVHrpP5xd6BbA4EJuMwdgz8R/SFOnQTXSziTuJuoRgdqS9gxJRx0wtVx2vhoUESYcLS+or6OQh/IOotLCAnE4MuVD9O4lunKwphRIZ8M0Mhf4ZTgkX2J5ME6CK/Agg53gJY6tgZb6WG4krSky5PQ6TU6YRj9LEOVakLL+wrwu/WVAJMQQo0jodBx2Gk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDb4KwpySBQPJduob/YMvy/ccj6MgnAcYltfMKT29TzbaNzly1oe0J/ghdT+gEx+SP/BwwHhtfnqrHx5Qn9sfao8z1UVposY1vWEwujG6UjBM7dRK6HgkpNcSRFt6H7INOoQd0iz7TSopJgS+zamjrVVk4FDbj+K3XSF1kbyQesP6045tL8jUfH5gRQqyJ/G9PzZkM4F9VXiISGBQclicbeRCJglCZT/GDGfifSBerRJ+tR/c78TqRPbgCUy/YumDmNGoqPppEVlK/reIUP2v2YqYl/MIC50kNkzMEDD7xnJ4sypkwnFfk762mG3QhEYD2azBRsUVHrpP5xd6BbA4EJuMwdgz8R/SFOnQTXSziTuJuoRgdqS9gxJRx0wtVx2vhoUESYcLS+or6OQh/IOotLCAnE4MuVD9O4lunKwphRIZ8M0Mhf4ZTgkX2J5ME6CK/Agg53gJY6tgZb6WG4krSky5PQ6TU6YRj9LEOVakLL+wrwu/WVAJMQQo0jodBx2Gk= 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-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:06.966892Z",
                            "start": "2026-05-26T20:45:06.290006Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000ea",
                        "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-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:07.219380Z",
                            "start": "2026-05-26T20:45:06.971909Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000eb",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "89fb8be2d30711d1ce822081ed4591129ae932ed",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "2fc294d2943c412681714244132e0a50_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "89fb8be2d30711d1ce822081ed4591129ae932ed",
                                    "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-1779828307.2684124-139-53773730029629/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "5f17f5573e1740c9f792b334817e92ea",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1779828307.2684124-139-53773730029629/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:07.894759Z",
                            "start": "2026-05-26T20:45:07.226653Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000ec",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "caebebede2159af21aed7842ec24d81db9e0b794",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "2fc294d2943c412681714244132e0a50_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "caebebede2159af21aed7842ec24d81db9e0b794",
                                    "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-1779828307.9428265-149-146144420033071/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "6e0e3ff7b1115bfbabad0ef87fd8a169",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1779828307.9428265-149-146144420033071/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:08.524424Z",
                            "start": "2026-05-26T20:45:07.900886Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000ed",
                        "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-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:08.552575Z",
                            "start": "2026-05-26T20:45:08.529405Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000cb",
                        "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-97bf-e7dd-0000000000d0",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:08.954962Z",
                            "start": "2026-05-26T20:45:08.557951Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000d2",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa"
                            ],
                            "delta": "0:00:00.011174",
                            "end": "2026-05-26 20:45:09.275330",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_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-97bf-e7dd-0000000000d8-0-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:09.264156",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/2fc294d2943c412681714244132e0a50_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-97bf-e7dd-0000000000d8-0-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:09.330704Z",
                            "start": "2026-05-26T20:45:08.969070Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000d8",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:09.764764Z",
                            "start": "2026-05-26T20:45:09.339006Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000d9",
                        "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-97bf-e7dd-000000000018",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:09.810334Z",
                            "start": "2026-05-26T20:45:09.770300Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-0000000000da",
                        "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-97bf-e7dd-00000000001d",
                        "name": "start-zuul-console",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/start-zuul-console"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:10.280949Z",
                            "start": "2026-05-26T20:45:09.825841Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000001f",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_info_dir": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/zuul-info"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:10.321707Z",
                            "start": "2026-05-26T20:45:10.292116Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000023",
                        "name": "Define zuul_info_dir fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/zuul-info"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:10.697074Z",
                            "start": "2026-05-26T20:45:10.327165Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000024",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "setup",
                            "ansible_facts": {
                                "ansible_all_ipv4_addresses": [
                                    "10.128.7.24"
                                ],
                                "ansible_all_ipv6_addresses": [
                                    "2a13:1a81:8000:3124:f816:3eff:feb8:ba4f",
                                    "fe80::f816:3eff:feb8:ba4f"
                                ],
                                "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-48-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-05-26",
                                    "day": "26",
                                    "epoch": "1779828311",
                                    "epoch_int": "1779828311",
                                    "hour": "20",
                                    "iso8601": "2026-05-26T20:45:11Z",
                                    "iso8601_basic": "20260526T204511777853",
                                    "iso8601_basic_short": "20260526T204511",
                                    "iso8601_micro": "2026-05-26T20:45:11.777853Z",
                                    "minute": "45",
                                    "month": "05",
                                    "second": "11",
                                    "time": "20:45:11",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Tuesday",
                                    "weekday_number": "2",
                                    "weeknumber": "21",
                                    "year": "2026"
                                },
                                "ansible_default_ipv4": {
                                    "address": "10.128.7.24",
                                    "alias": "ens3",
                                    "broadcast": "10.128.7.255",
                                    "gateway": "10.128.7.1",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:b8:ba:4f",
                                    "mtu": 1500,
                                    "netmask": "255.255.255.0",
                                    "network": "10.128.7.0",
                                    "prefix": "24",
                                    "type": "ether"
                                },
                                "ansible_default_ipv6": {
                                    "address": "2a13:1a81:8000:3124:f816:3eff:feb8:ba4f",
                                    "gateway": "fe80::f816:3eff:fe92:ad10",
                                    "interface": "ens3",
                                    "macaddress": "fa:16:3e:b8:ba:4f",
                                    "mtu": 1500,
                                    "prefix": "64",
                                    "scope": "global",
                                    "type": "ether"
                                },
                                "ansible_device_links": {
                                    "ids": {},
                                    "labels": {
                                        "vda1": [
                                            "cloudimg-rootfs"
                                        ]
                                    },
                                    "masters": {},
                                    "uuids": {
                                        "vda1": [
                                            "dff81776-bef1-4687-804c-645929d59d5a"
                                        ]
                                    }
                                },
                                "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": [
                                                        "dff81776-bef1-4687-804c-645929d59d5a"
                                                    ]
                                                },
                                                "sectors": "20969439",
                                                "sectorsize": 512,
                                                "size": "10.00 GB",
                                                "start": "2048",
                                                "uuid": "dff81776-bef1-4687-804c-645929d59d5a"
                                            }
                                        },
                                        "removable": "0",
                                        "rotational": "1",
                                        "sas_address": null,
                                        "sas_device_handle": null,
                                        "scheduler_mode": "none",
                                        "sectors": "20971520",
                                        "sectorsize": "512",
                                        "size": "10.00 GB",
                                        "support_discard": "512",
                                        "vendor": "0x1af4",
                                        "virtual": 1
                                    }
                                },
                                "ansible_distribution": "Debian",
                                "ansible_distribution_file_parsed": true,
                                "ansible_distribution_file_path": "/etc/os-release",
                                "ansible_distribution_file_variety": "Debian",
                                "ansible_distribution_major_version": "12",
                                "ansible_distribution_minor_version": "14",
                                "ansible_distribution_release": "bookworm",
                                "ansible_distribution_version": "12.14",
                                "ansible_dns": {
                                    "domain": "a.customers.regiocloud.tech.",
                                    "nameservers": [
                                        "81.163.194.9",
                                        "81.163.194.10"
                                    ],
                                    "search": [
                                        "a.customers.regiocloud.tech."
                                    ]
                                },
                                "ansible_domain": "",
                                "ansible_effective_group_id": 1000,
                                "ansible_effective_user_id": 1000,
                                "ansible_ens3": {
                                    "active": true,
                                    "device": "ens3",
                                    "ipv4": {
                                        "address": "10.128.7.24",
                                        "broadcast": "10.128.7.255",
                                        "netmask": "255.255.255.0",
                                        "network": "10.128.7.0",
                                        "prefix": "24"
                                    },
                                    "ipv6": [
                                        {
                                            "address": "2a13:1a81:8000:3124:f816:3eff:feb8:ba4f",
                                            "prefix": "64",
                                            "scope": "global"
                                        },
                                        {
                                            "address": "fe80::f816:3eff:feb8:ba4f",
                                            "prefix": "64",
                                            "scope": "link"
                                        }
                                    ],
                                    "macaddress": "fa:16:3e:b8:ba:4f",
                                    "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 35658 22",
                                    "SSH_CONNECTION": "2a13:1a81:8000:2::38d 35658 2a13:1a81:8000:3124:f816:3eff:feb8:ba4f 22",
                                    "USER": "zuul",
                                    "XDG_RUNTIME_DIR": "/run/user/1000",
                                    "XDG_SESSION_CLASS": "user",
                                    "XDG_SESSION_ID": "2",
                                    "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": [
                                    "ens3",
                                    "lo"
                                ],
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "6.1.0-48-amd64",
                                "ansible_kernel_version": "#1 SMP PREEMPT_DYNAMIC Debian 6.1.172-1 (2026-05-15)",
                                "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.00537109375,
                                    "1m": 0.080078125,
                                    "5m": 0.0166015625
                                },
                                "ansible_local": {},
                                "ansible_locally_reachable_ips": {
                                    "ipv4": [
                                        "10.128.7.24",
                                        "127.0.0.0/8",
                                        "127.0.0.1"
                                    ],
                                    "ipv6": [
                                        "::1",
                                        "2a13:1a81:8000:3124:f816:3eff:feb8:ba4f",
                                        "fe80::f816:3eff:feb8:ba4f"
                                    ]
                                },
                                "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": "ef66e3674ac246518473f2b99452c953",
                                "ansible_memfree_mb": 3671,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 3757,
                                        "used": 156
                                    },
                                    "real": {
                                        "free": 3671,
                                        "total": 3913,
                                        "used": 242
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 3913,
                                "ansible_mounts": [
                                    {
                                        "block_available": 1944189,
                                        "block_size": 4096,
                                        "block_total": 2443533,
                                        "block_used": 499344,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 2494834,
                                        "inode_total": 2531088,
                                        "inode_used": 36254,
                                        "mount": "/",
                                        "options": "rw,relatime",
                                        "size_available": 7963398144,
                                        "size_total": 10008711168,
                                        "uuid": "dff81776-bef1-4687-804c-645929d59d5a"
                                    }
                                ],
                                "ansible_nodename": "debian",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-6.1.0-48-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": "AAAAB3NzaC1kc3MAAACBAPwMbe0F8R9bY0V/i8anLY2LhjHLFIXltPNUcLrIQde2eNie7sw3xB3a+MwJzCgSotMZfaY+qnmfsGKzdXNXATCvBMMPHJKVjysfGiK1kkYw68AubZ/fbn+07tdt+AedLLDnowqOviI7X0BV7Pwas/KDdqpbq1C5ZQzQ4oRMXDSfAAAAFQDDUfYHvgUTTGEbBgK87iPXmwNy6wAAAIEA2jF94oq01akJbvSNeOz9Sxwc5GxqBXWetRhjwcci+JZ7ppfeGGqjhn2Ys4IORf9P57kuWT//N7V1c3NWs0kgC9yq+t5JQvD+LfqYiDibKRXBOkfvexuXkduAU+8F0zfF9y9qNVqrz8myaCIFtAD4woJUx+3sGlhhK5q88EVtjKsAAACBANkuctqoxbyhxQdgbrqCv4bD1zvKuKj9fvei59LSFqrdXg5zDWbgyifCggK4KClWGHzy+ZSJRLT9fQ5EWD3sP56eScEdG1jjuuQuBQZDVlGXeF0WOA0lJ+tj+oqL/epwhPUTKv4j9Qz5WFsI4tJBmCUYS9J1L7kqopwVrMlcaCRP",
                                "ansible_ssh_host_key_dsa_public_keytype": "ssh-dss",
                                "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHtsudrjBQZCShFM3fWOnfIqdBVv85LJk5tbItkTM524mlncSAX5I6KPtZm8MlmW6QL39mzSQhiBrs5PeCC8AH0=",
                                "ansible_ssh_host_key_ecdsa_public_keytype": "ecdsa-sha2-nistp256",
                                "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIIxX1971PHVBcFgz1L8QiKGnAK+NqmGOgp0RS3z1mIwJ",
                                "ansible_ssh_host_key_ed25519_public_keytype": "ssh-ed25519",
                                "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQC43WZzwKfBNNWUCVdVLC+nwwPXta415lXRNA77ljMaLL1DhuhjwLBRYJJLln9U5BrynbihXA5FdhfaOGkqjIdxc6UrmgSJBmhVqZK9HMCGtsJnDD8D8fafb/gWuJC3joAgzlWzvzomAvbAPY/XS5u2rG4ldZHppWSh+eepzyJ/seYNxJzMs0JzpdghC4aqnbiEAV7ILrI1A7eEcgI7T3GAjOn8XgwoqtSAHRQPYSv+DnB9dEHbP8rWHH4qskJ4CV5wEV/D7sKGUexPyrvC5e7UV534rjz5BxPHQh1qjTFqippumgQE0pg8L041kK8DjHO/DFNUJfREYGKC3fj84bAC9awwI4WyziK8KPZTo+80aOypCF0LTEZ1vUKscfdN600vguZ0h2sFbawyZEZbdP9HWZZhf3IRI6CzUFfv9bY8cx7ONZ8b7q8n9d/DHLjPYhDkZd7w7RWlNiMM2NiEVa2s6QfZ6vW2IRBFkpuPS/uwqw6w6zaj2TIe8wrWcalS8sc=",
                                "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": 2877,
                                "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-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:11.977438Z",
                            "start": "2026-05-26T20:45:10.703794Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000025",
                        "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-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:12.105595Z",
                            "start": "2026-05-26T20:45:11.990244Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000026",
                        "name": "Sanitize hostname"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "8571576a7d6912600b7749567f3eb4b43eadabab",
                            "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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": "8571576a7d6912600b7749567f3eb4b43eadabab",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/.ansible/tmp/ansible-tmp-1779828312.1740277-246-222989589054803/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "f43e7fa1290560adb3a0157aafc74292",
                            "mode": "0644",
                            "owner": "root",
                            "size": 13286,
                            "src": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/.ansible/tmp/ansible-tmp-1779828312.1740277-246-222989589054803/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:12.730610Z",
                            "start": "2026-05-26T20:45:12.152433Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000027",
                        "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            495375   343  495032    1% /dev\ntmpfs           500891   458  500433    1% /run\n/dev/vda1      2531088 36254 2494834    2% /\ntmpfs           500891     1  500890    1% /dev/shm\ntmpfs           500891     3  500888    1% /run/lock\ntmpfs           100178    20  100158    1% /run/user/1000\n",
                            "df_m": "Filesystem     1M-blocks  Used Available Use% Mounted on\nudev                1936     0      1936   0% /dev\ntmpfs                392     1       391   1% /run\n/dev/vda1           9546  1505      7595  17% /\ntmpfs               1957     0      1957   0% /dev/shm\ntmpfs                  5     0         5   0% /run/lock\ntmpfs                392     0       392   0% /run/user/1000\n",
                            "image_manifest_files": [],
                            "invocation": {
                                "module_args": {
                                    "image_manifest": null,
                                    "image_manifest_files": [
                                        "/etc/dib-builddate.txt",
                                        "/etc/image-hostname.txt"
                                    ],
                                    "ipv4_route_required": false,
                                    "ipv6_route_required": false,
                                    "traceroute_host": null
                                }
                            },
                            "network_interfaces": "1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n       valid_lft forever preferred_lft forever\n    inet6 ::1/128 scope host noprefixroute \n       valid_lft forever preferred_lft forever\n2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000\n    link/ether fa:16:3e:b8:ba:4f brd ff:ff:ff:ff:ff:ff\n    altname enp0s3\n    inet 10.128.7.24/24 brd 10.128.7.255 scope global dynamic ens3\n       valid_lft 40326sec preferred_lft 40326sec\n    inet6 2a13:1a81:8000:3124:f816:3eff:feb8:ba4f/64 scope global dynamic mngtmpaddr \n       valid_lft forever preferred_lft forever\n    inet6 fe80::f816:3eff:feb8:ba4f/64 scope link \n       valid_lft forever preferred_lft forever\n",
                            "network_neighbors": "10.128.7.1 dev ens3 lladdr fa:16:3e:ef:4b:9b REACHABLE \nfe80::f816:3eff:fe92:ad10 dev ens3 lladdr fa:16:3e:92:ad:10 router REACHABLE \n",
                            "network_routing_v4": "default via 10.128.7.1 dev ens3 \n10.128.7.0/24 dev ens3 proto kernel scope link src 10.128.7.24 \n169.254.169.254 via 10.128.7.2 dev ens3 \n",
                            "network_routing_v6": "2a13:1a81:8000:3124::/64 dev ens3 proto kernel metric 256 pref medium\nfe80::/64 dev ens3 proto kernel metric 256 pref medium\ndefault via fe80::f816:3eff:fe92:ad10 dev ens3 proto ra metric 1024 expires 65503sec 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-48-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.172-1 (2026-05-15) x86_64 GNU/Linux\n"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:13.197363Z",
                            "start": "2026-05-26T20:45:12.742003Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000029",
                        "name": "Collect information about zuul worker"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "template",
                            "changed": true,
                            "checksum": "b29fc6630e335736dffbfc28ac0c5a5b515ec7f0",
                            "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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": "b29fc6630e335736dffbfc28ac0c5a5b515ec7f0",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/.ansible/tmp/ansible-tmp-1779828313.2501302-285-131742310886075/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "02d8a007a20846cc0eca0a59159fd978",
                            "mode": "0644",
                            "owner": "root",
                            "size": 2518,
                            "src": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/.ansible/tmp/ansible-tmp-1779828313.2501302-285-131742310886075/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000021",
                        "name": "validate-host",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/validate-host"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:13.806803Z",
                            "start": "2026-05-26T20:45:13.204004Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000002a",
                        "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-97bf-e7dd-00000000002c",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:14.097580Z",
                            "start": "2026-05-26T20:45:13.816308Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000002e",
                        "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/2fc294d2943c412681714244132e0a50/work/src '[zuul@2a13:1a81:8000:3124:f816:3eff:feb8:ba4f]:.'",
                            "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:feb8:ba4f]:.",
                                    "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/2fc294d2943c412681714244132e0a50/work/src",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ src/\ncd+++++++++ src/github.com/\ncd+++++++++ src/github.com/osism/\ncd+++++++++ src/github.com/osism/openstack-project-manager/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.flake8\n<f+++++++++ src/github.com/osism/openstack-project-manager/.gitignore\n<f+++++++++ src/github.com/osism/openstack-project-manager/.yamllint.yml\n<f+++++++++ src/github.com/osism/openstack-project-manager/.zuul.yaml\n<f+++++++++ src/github.com/osism/openstack-project-manager/LICENSE\n<f+++++++++ src/github.com/osism/openstack-project-manager/Pipfile\n<f+++++++++ src/github.com/osism/openstack-project-manager/Pipfile.lock\n<f+++++++++ src/github.com/osism/openstack-project-manager/README.md\n<f+++++++++ src/github.com/osism/openstack-project-manager/clouds.yml.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/requirements.txt\n<f+++++++++ src/github.com/osism/openstack-project-manager/secure.yml.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/settings.toml.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/tox.ini\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/COMMIT_EDITMSG\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/FETCH_HEAD\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/HEAD\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/ORIG_HEAD\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/config\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/config.worktree\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/description\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/index\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/packed-refs\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/branches/\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/applypatch-msg.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/commit-msg.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/fsmonitor-watchman.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/post-update.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-applypatch.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-commit.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-merge-commit.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-push.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-rebase.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-receive.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/prepare-commit-msg.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/push-to-checkout.sample\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/update.sample\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/info/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/info/exclude\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/logs/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/logs/HEAD\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/03/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/03/96333170a8354a62f0bba18a3a234aa0c5392b\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/06/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/06/a047ba8624cb85cb750695167078009808b6cc\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/06/c43fcd5400a3faa3e58929464552b0493e3135\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0b/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0b/2c1a5eeb8220ec1d656c02ebf99e1050cf172f\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/2bc60d6074f9957a4794242790661ca7427823\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/cbcfdb75fbcaeea1a0ce34d60cc32b41e048ef\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/fb50c7792bda24c76b0f152fe17746afb16e21\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/11/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/11/922206ad294f09f6fbbc08b7eba3bc339aecb6\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/12/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/12/844ee3bd46de93329a778004b3aeec11b32f33\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/13/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/13/41371826c3908692763dd91bf19d0560bf1160\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/17/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/17/15650556ddf70d59bab714954cf1b58f902d83\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/1d/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/1d/a1fcfab08dbf5f6213fa42d9e77655c382cd7c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/50e99bf0a9b26b44e043c56e3c613e8bd3046a\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/ada13131cad2916a345a0c5149b522c6e21391\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/b1220ca5df2c15b361953db4d1e54fc020c612\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/bb275fc489d5212a4810e8406b2640489c24f3\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2b/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2b/44cfdb3cca2684cb9ac868ec91c01b415852c6\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2b/622a1c4fd446947a08ac45967a38ac3cbd9357\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2c/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2c/7cff2d8d441aa4e1e90f87f723323984369383\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2d/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2d/24441d82e79362bbffc824767f7588d4528976\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2f/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2f/035d62d2caa32a5f03280157a6ade866fef19c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/31/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/31/17ec174c752dd710aa114ce5f0e328bd85d580\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/32/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/32/c220a64cb1427e2725f4fdff69a000dc5778e5\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3a/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3a/4712afddd710f2416f2a0d4ce3be58c3cce025\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3b/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3b/be2db4859a41dd82db27360368b7daf2cd0b26\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3d/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3d/ba7f0a8353a8257793fcc3aacdbde0b0132e7f\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3d/ce7d4ac3182cb7d72bc1473abc4c236abb15f7\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/41/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/41/9d518cd0ba589205707f1d3188a50d210b7da1\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/43/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/43/bd58fb099fe294d53e6ec16481b869d87dd07d\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/44/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/44/88cfb75954e6075e16f69046e41832eebb50eb\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/45/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/45/0058dfdda4703b56f48e77997d88fad0d89b92\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/47/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/47/95f83e9e0bf55d7c6294a089e23b4c877d0bda\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/48/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/48/78008ffd13e5a445a24871d2661f6823630ff0\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/48/a8ab5f01620008a0d310c56f6179df10ba5b50\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4b/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4b/4f12ce823a5c49a599c97fa46cc98ea4888639\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4e/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4e/9703ffb78715e54df0670705d84b587bed6f62\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/51/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/51/5c96b7a5b786161ec3c40fdbad22cd611831d4\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/51/64c9ac042cf3fe230421b509ed30b967cdb2d3\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/54/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/54/5b47e34d6624dae1ceb6cec7c3123dc906741c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/56/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/56/67b123a2d2609be2b204d456483c18b86adab1\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/57/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/57/7ab0876784181f9441bca41fde14d6161f8256\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/57/80f91dacf47c42e6f699557de9a0ea7da85657\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/58/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/58/74a1b04acbb2c4fc0ba9ed18b115299dee7d1d\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/58/c0be3936e976381fed69e49454cba16590aa4d\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5a/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5a/517cc36427143c38512f04ee99ee779fdc4614\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5c/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5c/be7ef954f5605f4fb59f24e49c6c5c970a5ed8\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5c/d6c448dbc8db6a077867fa485e6d2a0d7c9c2e\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5d/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5d/b24e9f9a5334423920adb9cbfdfec270cb8534\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/64/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/64/2c0ea1979eed8620b902a3d177baec8472a0ca\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/65/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/65/f07d6bd709a409bf96e3a84613d2768e0fffdb\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/66/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/66/5dec509e830d72ca5773b8cbcf23a979aded23\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/68/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/68/7ca622d7a03a83c28d3774078c1061017b8a3f\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/68/e93deecf3071e11d1229df0e60658ac48b9b7e\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/69/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/69/476d3f031ec7a351b1fb5b877b2eca87fc7a54\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/69/e8b15246dbe1bbfe3a58d086cd9ed901d782cf\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/6b/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/6b/139ce4d907e3660dd6a83512be0f79a239fca2\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/6b/5de5180af247e840404965c50cf1f65ab1a9ce\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/70/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/70/ce8a2925c18d03ecc4328765fecbd55ab0f8ab\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/72/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/72/a2f5a5487919b33c1ddb82479ceb3ef7f1e5e5\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/75/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/75/a1a6c798634c3b142cc161693134d1fb51bab7\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/75/fb0120d9f7784daa77da5512e5612ff81324de\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/77/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/77/b45588f90959fc0529482430458ea3c8aafd0d\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/77/b63bf90451f6f47db8b237e1e661a9a872a66c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7a/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7a/24cef2f1468cebbf6e575dd8f636d4a7867345\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7b/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7b/b3559d44268de4a71f7169d4aed0a31a4ed916\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7b/ebb87eb82da525e9db466db544a1f8b17abcf3\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7e/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7e/32939da860d2e9c1d4e1c1c2338e01d8664ed7\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7f/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7f/cabb545f8083124ad01694d62165e86664f9cf\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/87/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/87/6c514d565b3c70d0358f7a182201c3a291a200\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/89/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/89/a9141943e7a3a8795665401bdc311c015ab7d8\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8c/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8c/33e809aec2cefca29c7fc09774d43b1cc96d3d\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8e/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8e/ec1f26c2d59a8d1e2fdc4938e5ebc144f9c439\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/90/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/90/696d0f56331e83cd141155e495cdedd3da7f3d\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/99/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/99/30fdb355a525c12a36a438add63f90d4d2f079\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9a/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9a/e3398ae621ad6784108e4547c56fb8bf46ae09\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9d/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9d/fb95efaca44719b2c1005f09d7955f2b3c6623\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9e/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9e/ea048033255b8fd7341339922fe2fcf5c8c494\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a2/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a2/6fbdec32e645e0a67a3c3302744582596fa69a\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/5487b6ecd14c4b8a52457ac53b9646a1fe4d6f\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/af8ea2b55c3504ab53a1d5a313bece1e80db87\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/b5cd7ce5be87ed04816949bd6270858495668d\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/f152d1c22371051d38fa5ed654c2c54b9e222c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a6/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a6/adf296240a72813ba4c801540c8e2f900a3a98\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/0212bd78427ea103deef6569a1ed564b4eac32\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/4a1fb37dbf502646084cd47407b76acdb47ef6\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/c94ca018c2b5bf0d535f353e66ab6ea7f003d9\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a9/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a9/697038f71ab0c54f23ba52a00afeb6d7259446\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/aa/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/aa/8ccf15b7edc6375d5362f52218159a357aafdd\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ad/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ad/c2bd3924b60a5264fa12daaceaf1eeae23a89e\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ae/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ae/a065b6913785ab6e5c0458149aa179c6b874c6\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b0/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b0/540d02e21f7ec367d2bf22ae5c07d473d9d6f6\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b1/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b1/26fab7e0a90906706ded91ec47d98f902ffb5e\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b2/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b2/ce90e431745ea8caf0f82fb00c007bdca9718c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b3/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b3/e9657562b7355df99582f34f114f277c267dc8\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b6/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b6/a15aafc188066a19f65703ca1235b7fe0e013c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b7/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b7/e6fa0eeb27a54d1133bcb52aa86e9f5a942dba\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b8/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b8/aaed37746a0f9bd4a117201fdab074311a6a2a\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b8/ecbda216a8f9da5bfc3cb5dcb75038af909fee\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ba/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ba/7a4a3a18a91e072eec5cc9737c3963c3810d3f\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bb/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bb/e12318665ebabc44916110853b59bd86cdc53c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/be/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/be/58504ca37f5413378764fe5beab889d5ee9841\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bf/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bf/5c55496eb00d36636305badbf8eec11b3d2101\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c1/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c1/b30d040305205ab61c77b07f9569347bf3ea9a\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c2/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c2/42b7be4e3048e0422758daac9a3c881840a3b9\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c3/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c3/6f75dc21f04eb91d99f4d80cb73739095307c8\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/af0113e9fb5fcfdd277176a3afb10b610ee12b\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/b7d62248b1cbf71f2cdec2fed90e1cbd8994fe\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/ed17a18b52a74bddb88b5d7875c7c4a56f4c69\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c7/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c7/038c4677c9e51496c5abc99fa533f0daffe2a0\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c7/aa30cb97b2fc46c1f7b50db29da4d1e6212700\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c8/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c8/b798f9fdf79f6a3731e9e532e3904653855068\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ca/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ca/d1603cfccb249969f1ae9926893878738dd75b\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cb/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cb/6a72ac2411913a700e9156612e3670c7649f59\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cd/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cd/be553ed42f8ce22fc2bf9043165609f0734541\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cf/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cf/40526164c4180e305261ec22a857e423e27f44\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d2/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d2/f23903c53f61d349b28d60f7ce1a8d83a8be50\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d4/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d4/e44b6858e3b97d74b65a3309f467fada057ce7\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d5/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d5/1cbd4474b761f0161db49cf83d6e6ca62792d1\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d5/8b29c3a6455fdfcba467baedec94d7a4cc333c\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d6/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d6/62fb0544c7bffdf47ceefad2dca8b1be85b3c5\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d8/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d8/c1ee42382fa58025e149efcb411dfac06afcae\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/2ba4c3e7b02b6724bb61952a0a6851d6f2672b\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/bcba8ba0290b5981c2461cbee44072817de464\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/d60051e88934de6de69668ee50193067cf3454\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e9/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e9/01bcdfa91eb7e22df2201644018b015221edf0\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/eb/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/eb/1e6169ae585274239fde33ce74412b0bdb371a\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ee/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ee/a576d685767031db6a99b59063d7ce9e480532\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ee/ae9ea0b7b99e8d1ffa923d03a6176059d7728f\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f0/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f0/ca4176718324aba92a27394c99409893241f51\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f6/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f6/7893b5fdd255022950f9c35fd41266bb9f2ba2\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f7/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f7/dcd004fc5b6b30928a81ad5e74e6b3bdc6b63b\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f8/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f8/98405bb9dc5ce9a3a3427db8eca6ff458a57c0\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f8/c7822f5dfc03218e820f74fa4b7e3328c3303d\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f9/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f9/b6292e18b9f50ce7c7759fbdd7f853b29d3215\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/fb/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/fb/3360340a5dbad8de3a6e2715734975a8ca550e\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/fb/65c35f918519fa197bc812e46536717dcbd580\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ff/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ff/6d448e98eb9d2776dff0c0bf6aa002cc7bcb1d\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/info/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/info/commit-graph\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/info/packs\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-bd1b7fe191aa68bb1cb78a03f6df1dee2e79a164.idx\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-bd1b7fe191aa68bb1cb78a03f6df1dee2e79a164.pack\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-e1946e240194395408e6965f080d20176fc2aa4c.idx\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-e1946e240194395408e6965f080d20176fc2aa4c.pack\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/heads/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/heads/main\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/remotes/\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/remotes/origin/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/remotes/origin/main\ncd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/zuul/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451\n<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/zuul/fetch\ncd+++++++++ src/github.com/osism/openstack-project-manager/.github/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.github/renovate.json\ncd+++++++++ src/github.com/osism/openstack-project-manager/.github/workflows/\n<f+++++++++ src/github.com/osism/openstack-project-manager/.github/workflows/add-to-project.yml\ncd+++++++++ src/github.com/osism/openstack-project-manager/etc/\n<f+++++++++ src/github.com/osism/openstack-project-manager/etc/classes.yml\n<f+++++++++ src/github.com/osism/openstack-project-manager/etc/endpoints.yml\ncd+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/__init__.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create_endpoint_groups.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create_ldap.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create_user.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/manage_ldap.py\ncd+++++++++ src/github.com/osism/openstack-project-manager/playbooks/\n<f+++++++++ src/github.com/osism/openstack-project-manager/playbooks/mypy.yml\n<f+++++++++ src/github.com/osism/openstack-project-manager/playbooks/tox.yml\ncd+++++++++ src/github.com/osism/openstack-project-manager/test/\ncd+++++++++ src/github.com/osism/openstack-project-manager/test/unit/\n<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/__init__.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_create.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_create_ldap.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_create_user.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_manage.py\n<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_manage_ldap.py\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ src/",
                                "cd+++++++++ src/github.com/",
                                "cd+++++++++ src/github.com/osism/",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.flake8",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.gitignore",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.yamllint.yml",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.zuul.yaml",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/LICENSE",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/Pipfile",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/Pipfile.lock",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/README.md",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/clouds.yml.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/requirements.txt",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/secure.yml.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/settings.toml.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/tox.ini",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/COMMIT_EDITMSG",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/FETCH_HEAD",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/HEAD",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/ORIG_HEAD",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/config",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/config.worktree",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/description",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/index",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/packed-refs",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/branches/",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/applypatch-msg.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/fsmonitor-watchman.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/post-update.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-applypatch.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-commit.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-merge-commit.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-push.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-rebase.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/pre-receive.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/prepare-commit-msg.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/push-to-checkout.sample",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/hooks/update.sample",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/info/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/info/exclude",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/logs/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/logs/HEAD",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/03/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/03/96333170a8354a62f0bba18a3a234aa0c5392b",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/06/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/06/a047ba8624cb85cb750695167078009808b6cc",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/06/c43fcd5400a3faa3e58929464552b0493e3135",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0b/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0b/2c1a5eeb8220ec1d656c02ebf99e1050cf172f",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/2bc60d6074f9957a4794242790661ca7427823",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/cbcfdb75fbcaeea1a0ce34d60cc32b41e048ef",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/0c/fb50c7792bda24c76b0f152fe17746afb16e21",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/11/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/11/922206ad294f09f6fbbc08b7eba3bc339aecb6",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/12/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/12/844ee3bd46de93329a778004b3aeec11b32f33",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/13/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/13/41371826c3908692763dd91bf19d0560bf1160",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/17/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/17/15650556ddf70d59bab714954cf1b58f902d83",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/1d/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/1d/a1fcfab08dbf5f6213fa42d9e77655c382cd7c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/50e99bf0a9b26b44e043c56e3c613e8bd3046a",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/ada13131cad2916a345a0c5149b522c6e21391",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/b1220ca5df2c15b361953db4d1e54fc020c612",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/20/bb275fc489d5212a4810e8406b2640489c24f3",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2b/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2b/44cfdb3cca2684cb9ac868ec91c01b415852c6",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2b/622a1c4fd446947a08ac45967a38ac3cbd9357",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2c/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2c/7cff2d8d441aa4e1e90f87f723323984369383",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2d/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2d/24441d82e79362bbffc824767f7588d4528976",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2f/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/2f/035d62d2caa32a5f03280157a6ade866fef19c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/31/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/31/17ec174c752dd710aa114ce5f0e328bd85d580",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/32/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/32/c220a64cb1427e2725f4fdff69a000dc5778e5",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3a/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3a/4712afddd710f2416f2a0d4ce3be58c3cce025",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3b/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3b/be2db4859a41dd82db27360368b7daf2cd0b26",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3d/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3d/ba7f0a8353a8257793fcc3aacdbde0b0132e7f",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/3d/ce7d4ac3182cb7d72bc1473abc4c236abb15f7",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/41/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/41/9d518cd0ba589205707f1d3188a50d210b7da1",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/43/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/43/bd58fb099fe294d53e6ec16481b869d87dd07d",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/44/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/44/88cfb75954e6075e16f69046e41832eebb50eb",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/45/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/45/0058dfdda4703b56f48e77997d88fad0d89b92",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/47/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/47/95f83e9e0bf55d7c6294a089e23b4c877d0bda",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/48/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/48/78008ffd13e5a445a24871d2661f6823630ff0",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/48/a8ab5f01620008a0d310c56f6179df10ba5b50",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4b/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4b/4f12ce823a5c49a599c97fa46cc98ea4888639",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4e/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/4e/9703ffb78715e54df0670705d84b587bed6f62",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/51/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/51/5c96b7a5b786161ec3c40fdbad22cd611831d4",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/51/64c9ac042cf3fe230421b509ed30b967cdb2d3",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/54/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/54/5b47e34d6624dae1ceb6cec7c3123dc906741c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/56/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/56/67b123a2d2609be2b204d456483c18b86adab1",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/57/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/57/7ab0876784181f9441bca41fde14d6161f8256",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/57/80f91dacf47c42e6f699557de9a0ea7da85657",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/58/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/58/74a1b04acbb2c4fc0ba9ed18b115299dee7d1d",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/58/c0be3936e976381fed69e49454cba16590aa4d",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5a/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5a/517cc36427143c38512f04ee99ee779fdc4614",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5c/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5c/be7ef954f5605f4fb59f24e49c6c5c970a5ed8",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5c/d6c448dbc8db6a077867fa485e6d2a0d7c9c2e",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5d/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/5d/b24e9f9a5334423920adb9cbfdfec270cb8534",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/64/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/64/2c0ea1979eed8620b902a3d177baec8472a0ca",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/65/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/65/f07d6bd709a409bf96e3a84613d2768e0fffdb",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/66/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/66/5dec509e830d72ca5773b8cbcf23a979aded23",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/68/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/68/7ca622d7a03a83c28d3774078c1061017b8a3f",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/68/e93deecf3071e11d1229df0e60658ac48b9b7e",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/69/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/69/476d3f031ec7a351b1fb5b877b2eca87fc7a54",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/69/e8b15246dbe1bbfe3a58d086cd9ed901d782cf",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/6b/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/6b/139ce4d907e3660dd6a83512be0f79a239fca2",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/6b/5de5180af247e840404965c50cf1f65ab1a9ce",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/70/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/70/ce8a2925c18d03ecc4328765fecbd55ab0f8ab",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/72/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/72/a2f5a5487919b33c1ddb82479ceb3ef7f1e5e5",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/75/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/75/a1a6c798634c3b142cc161693134d1fb51bab7",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/75/fb0120d9f7784daa77da5512e5612ff81324de",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/77/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/77/b45588f90959fc0529482430458ea3c8aafd0d",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/77/b63bf90451f6f47db8b237e1e661a9a872a66c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7a/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7a/24cef2f1468cebbf6e575dd8f636d4a7867345",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7b/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7b/b3559d44268de4a71f7169d4aed0a31a4ed916",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7b/ebb87eb82da525e9db466db544a1f8b17abcf3",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7e/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7e/32939da860d2e9c1d4e1c1c2338e01d8664ed7",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7f/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/7f/cabb545f8083124ad01694d62165e86664f9cf",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/87/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/87/6c514d565b3c70d0358f7a182201c3a291a200",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/89/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/89/a9141943e7a3a8795665401bdc311c015ab7d8",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8c/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8c/33e809aec2cefca29c7fc09774d43b1cc96d3d",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8e/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/8e/ec1f26c2d59a8d1e2fdc4938e5ebc144f9c439",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/90/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/90/696d0f56331e83cd141155e495cdedd3da7f3d",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/99/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/99/30fdb355a525c12a36a438add63f90d4d2f079",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9a/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9a/e3398ae621ad6784108e4547c56fb8bf46ae09",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9d/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9d/fb95efaca44719b2c1005f09d7955f2b3c6623",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9e/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/9e/ea048033255b8fd7341339922fe2fcf5c8c494",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a2/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a2/6fbdec32e645e0a67a3c3302744582596fa69a",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/5487b6ecd14c4b8a52457ac53b9646a1fe4d6f",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/af8ea2b55c3504ab53a1d5a313bece1e80db87",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/b5cd7ce5be87ed04816949bd6270858495668d",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a5/f152d1c22371051d38fa5ed654c2c54b9e222c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a6/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a6/adf296240a72813ba4c801540c8e2f900a3a98",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/0212bd78427ea103deef6569a1ed564b4eac32",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/4a1fb37dbf502646084cd47407b76acdb47ef6",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a8/c94ca018c2b5bf0d535f353e66ab6ea7f003d9",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a9/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/a9/697038f71ab0c54f23ba52a00afeb6d7259446",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/aa/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/aa/8ccf15b7edc6375d5362f52218159a357aafdd",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ad/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ad/c2bd3924b60a5264fa12daaceaf1eeae23a89e",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ae/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ae/a065b6913785ab6e5c0458149aa179c6b874c6",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b0/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b0/540d02e21f7ec367d2bf22ae5c07d473d9d6f6",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b1/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b1/26fab7e0a90906706ded91ec47d98f902ffb5e",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b2/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b2/ce90e431745ea8caf0f82fb00c007bdca9718c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b3/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b3/e9657562b7355df99582f34f114f277c267dc8",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b6/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b6/a15aafc188066a19f65703ca1235b7fe0e013c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b7/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b7/e6fa0eeb27a54d1133bcb52aa86e9f5a942dba",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b8/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b8/aaed37746a0f9bd4a117201fdab074311a6a2a",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/b8/ecbda216a8f9da5bfc3cb5dcb75038af909fee",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ba/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ba/7a4a3a18a91e072eec5cc9737c3963c3810d3f",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bb/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bb/e12318665ebabc44916110853b59bd86cdc53c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/be/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/be/58504ca37f5413378764fe5beab889d5ee9841",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bf/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/bf/5c55496eb00d36636305badbf8eec11b3d2101",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c1/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c1/b30d040305205ab61c77b07f9569347bf3ea9a",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c2/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c2/42b7be4e3048e0422758daac9a3c881840a3b9",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c3/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c3/6f75dc21f04eb91d99f4d80cb73739095307c8",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/af0113e9fb5fcfdd277176a3afb10b610ee12b",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/b7d62248b1cbf71f2cdec2fed90e1cbd8994fe",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c5/ed17a18b52a74bddb88b5d7875c7c4a56f4c69",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c7/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c7/038c4677c9e51496c5abc99fa533f0daffe2a0",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c7/aa30cb97b2fc46c1f7b50db29da4d1e6212700",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c8/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/c8/b798f9fdf79f6a3731e9e532e3904653855068",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ca/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ca/d1603cfccb249969f1ae9926893878738dd75b",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cb/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cb/6a72ac2411913a700e9156612e3670c7649f59",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cd/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cd/be553ed42f8ce22fc2bf9043165609f0734541",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cf/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/cf/40526164c4180e305261ec22a857e423e27f44",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d2/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d2/f23903c53f61d349b28d60f7ce1a8d83a8be50",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d4/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d4/e44b6858e3b97d74b65a3309f467fada057ce7",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d5/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d5/1cbd4474b761f0161db49cf83d6e6ca62792d1",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d5/8b29c3a6455fdfcba467baedec94d7a4cc333c",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d6/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d6/62fb0544c7bffdf47ceefad2dca8b1be85b3c5",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d8/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/d8/c1ee42382fa58025e149efcb411dfac06afcae",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/2ba4c3e7b02b6724bb61952a0a6851d6f2672b",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/bcba8ba0290b5981c2461cbee44072817de464",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e5/d60051e88934de6de69668ee50193067cf3454",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e9/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/e9/01bcdfa91eb7e22df2201644018b015221edf0",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/eb/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/eb/1e6169ae585274239fde33ce74412b0bdb371a",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ee/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ee/a576d685767031db6a99b59063d7ce9e480532",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ee/ae9ea0b7b99e8d1ffa923d03a6176059d7728f",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f0/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f0/ca4176718324aba92a27394c99409893241f51",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f6/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f6/7893b5fdd255022950f9c35fd41266bb9f2ba2",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f7/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f7/dcd004fc5b6b30928a81ad5e74e6b3bdc6b63b",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f8/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f8/98405bb9dc5ce9a3a3427db8eca6ff458a57c0",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f8/c7822f5dfc03218e820f74fa4b7e3328c3303d",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f9/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/f9/b6292e18b9f50ce7c7759fbdd7f853b29d3215",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/fb/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/fb/3360340a5dbad8de3a6e2715734975a8ca550e",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/fb/65c35f918519fa197bc812e46536717dcbd580",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ff/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/ff/6d448e98eb9d2776dff0c0bf6aa002cc7bcb1d",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/info/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/info/commit-graph",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/info/packs",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-bd1b7fe191aa68bb1cb78a03f6df1dee2e79a164.idx",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-bd1b7fe191aa68bb1cb78a03f6df1dee2e79a164.pack",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-e1946e240194395408e6965f080d20176fc2aa4c.idx",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/objects/pack/pack-e1946e240194395408e6965f080d20176fc2aa4c.pack",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/heads/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/heads/main",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/remotes/",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/remotes/origin/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/remotes/origin/main",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/zuul/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/zuul/b28b7af69320201d1cf206ebf28373980add1451",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.git/refs/zuul/fetch",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.github/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.github/renovate.json",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/.github/workflows/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/.github/workflows/add-to-project.yml",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/etc/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/etc/classes.yml",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/etc/endpoints.yml",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/__init__.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create_endpoint_groups.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create_ldap.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/create_user.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/openstack_project_manager/manage_ldap.py",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/playbooks/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/playbooks/mypy.yml",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/playbooks/tox.yml",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/test/",
                                "cd+++++++++ src/github.com/osism/openstack-project-manager/test/unit/",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/__init__.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_create.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_create_ldap.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_create_user.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_manage.py",
                                "<f+++++++++ src/github.com/osism/openstack-project-manager/test/unit/test_manage_ldap.py"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-00000000002c",
                        "name": "prepare-workspace-log",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_0/github.com/osism/zuul-config/roles/prepare-workspace-log"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:15.007470Z",
                            "start": "2026-05-26T20:45:14.117076Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000002f",
                        "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-97bf-e7dd-000000000031",
                        "name": "ensure-output-dirs-present",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_0/github.com/osism/zuul-config/roles/ensure-output-dirs-present"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:15.798968Z",
                            "start": "2026-05-26T20:45:15.018305Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000033",
                        "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-97bf-e7dd-000000000036",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:16.078486Z",
                            "start": "2026-05-26T20:45:15.807419Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000038",
                        "name": "Ensure log directory exists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "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.076314",
                            "end": "2026-05-26 20:45:16.442204",
                            "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-97bf-e7dd-000000000039-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:16.365890",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-97bf-e7dd-000000000039-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000036",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:16.617158Z",
                            "start": "2026-05-26T20:45:16.105628Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-000000000039",
                        "name": "Probe first sudo invocation under strace"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.shell",
                            "changed": true,
                            "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.121440",
                            "end": "2026-05-26 20:45:17.072950",
                            "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-97bf-e7dd-00000000003a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:16.951510",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-97bf-e7dd-00000000003a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-97bf-e7dd-000000000036",
                        "name": "diagnose-first-sudo",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_0/github.com/osism/zuul-config/roles/diagnose-first-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:17.163178Z",
                            "start": "2026-05-26T20:45:16.646716Z"
                        },
                        "id": "0242ac1f-6606-97bf-e7dd-00000000003a",
                        "name": "Snapshot DNS / PAM / logind state (no become)"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 14,
            "failures": 0,
            "ignored": 0,
            "ok": 30,
            "rescued": 0,
            "skipped": 3,
            "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-05-26T20:45:20.136971Z",
                    "start": "2026-05-26T20:45:18.062188Z"
                },
                "id": "0242ac1f-6606-9c53-f812-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "bindep"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:18.147079Z",
                            "start": "2026-05-26T20:45:18.082312Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-000000000004",
                        "name": "Install binary dependencies"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "find.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:18.224980Z",
                            "start": "2026-05-26T20:45:18.178538Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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/openstack-project-manager/bindep.txt"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:18.616929Z",
                            "start": "2026-05-26T20:45:18.245341Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:18.650008Z",
                            "start": "2026-05-26T20:45:18.624913Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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/openstack-project-manager/other-requirements.txt"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:18.923939Z",
                            "start": "2026-05-26T20:45:18.661606Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:18.955882Z",
                            "start": "2026-05-26T20:45:18.930992Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.001088Z",
                            "start": "2026-05-26T20:45:18.971393Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.063930Z",
                            "start": "2026-05-26T20:45:19.016260Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.116821Z",
                            "start": "2026-05-26T20:45:19.079660Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.149970Z",
                            "start": "2026-05-26T20:45:19.124592Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000001c",
                        "name": "bindep",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/bindep"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.241258Z",
                            "start": "2026-05-26T20:45:19.156414Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-000000000021",
                        "name": "Include package tasks"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "test-setup"
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.288029Z",
                            "start": "2026-05-26T20:45:19.259412Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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/openstack-project-manager/tools/test-setup.sh"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-9c53-f812-00000000008f",
                        "name": "test-setup",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/test-setup"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:19.578915Z",
                            "start": "2026-05-26T20:45:19.308767Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-9c53-f812-00000000008f",
                        "name": "test-setup",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/test-setup"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:20.136971Z",
                            "start": "2026-05-26T20:45:19.623923Z"
                        },
                        "id": "0242ac1f-6606-9c53-f812-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-05-26T20:45:43.634983Z",
                    "start": "2026-05-26T20:45:21.083741Z"
                },
                "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.145872Z",
                            "start": "2026-05-26T20:45:21.100554Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.177179Z",
                            "start": "2026-05-26T20:45:21.152710Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.206978Z",
                            "start": "2026-05-26T20:45:21.182984Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.257817Z",
                            "start": "2026-05-26T20:45:21.213166Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.290173Z",
                            "start": "2026-05-26T20:45:21.265781Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.330515Z",
                            "start": "2026-05-26T20:45:21.295908Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.370087Z",
                            "start": "2026-05-26T20:45:21.343892Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000006",
                        "name": "ensure-python",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-python"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.401176Z",
                            "start": "2026-05-26T20:45:21.377301Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-000000000012",
                        "name": "Activate python using stow"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "ensure-pip"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:21.438625Z",
                            "start": "2026-05-26T20:45:21.414776Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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.008841",
                            "end": "2026-05-26 20:45:21.937385",
                            "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-f936-335e-000000000081-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-05-26 20:45:21.928544",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-f936-335e-000000000081-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:22.009901Z",
                            "start": "2026-05-26T20:45:21.498284Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml",
                                    "include_args": {},
                                    "zj_distro_os": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip/tasks/Debian.yaml"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:22.069424Z",
                            "start": "2026-05-26T20:45:22.022450Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-000000000082",
                        "name": "Install pip from packages"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "apt",
                            "cache_update_time": 1779828325,
                            "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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:26.634880Z",
                            "start": "2026-05-26T20:45:22.098084Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-0000000000be",
                        "name": "Update package lists"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "package",
                            "cache_update_time": 1779828325,
                            "cache_updated": false,
                            "changed": true,
                            "diff": {},
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "name": [
                                        "python3-pip",
                                        "python3-setuptools",
                                        "python3-venv",
                                        "python3-wheel"
                                    ],
                                    "only_upgrade": false,
                                    "package": [
                                        "python3-pip",
                                        "python3-setuptools",
                                        "python3-venv",
                                        "python3-wheel"
                                    ],
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": null,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            },
                            "stderr": "debconf: delaying package configuration, since apt-utils is not installed\n",
                            "stderr_lines": [
                                "debconf: delaying package configuration, since apt-utils is not installed"
                            ],
                            "stdout": "Reading package lists...\nBuilding dependency tree...\nReading state information...\nSuggested packages:\n  python-setuptools-doc\nThe following NEW packages will be installed:\n  python3-pip python3-setuptools python3-wheel\n0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.\nNeed to get 1877 kB of archives.\nAfter this operation, 9567 kB of additional disk space will be used.\nGet:1 http://deb.debian.org/debian bookworm/main amd64 python3-setuptools all 66.1.1-1+deb12u2 [522 kB]\nGet:2 http://deb.debian.org/debian bookworm/main amd64 python3-wheel all 0.38.4-2 [30.8 kB]\nGet:3 http://deb.debian.org/debian bookworm/main amd64 python3-pip all 23.0.1+dfsg-1 [1325 kB]\nFetched 1877 kB in 0s (16.2 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 ... 27766 files and directories currently installed.)\r\nPreparing to unpack .../python3-setuptools_66.1.1-1+deb12u2_all.deb ...\r\nUnpacking python3-setuptools (66.1.1-1+deb12u2) ...\r\nSelecting previously unselected package python3-wheel.\r\nPreparing to unpack .../python3-wheel_0.38.4-2_all.deb ...\r\nUnpacking python3-wheel (0.38.4-2) ...\r\nSelecting previously unselected package python3-pip.\r\nPreparing to unpack .../python3-pip_23.0.1+dfsg-1_all.deb ...\r\nUnpacking python3-pip (23.0.1+dfsg-1) ...\r\nSetting up python3-setuptools (66.1.1-1+deb12u2) ...\r\nSetting up python3-wheel (0.38.4-2) ...\r\nSetting up python3-pip (23.0.1+dfsg-1) ...\r\n",
                            "stdout_lines": [
                                "Reading package lists...",
                                "Building dependency tree...",
                                "Reading state information...",
                                "Suggested packages:",
                                "  python-setuptools-doc",
                                "The following NEW packages will be installed:",
                                "  python3-pip python3-setuptools python3-wheel",
                                "0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.",
                                "Need to get 1877 kB of archives.",
                                "After this operation, 9567 kB of additional disk space will be used.",
                                "Get:1 http://deb.debian.org/debian bookworm/main amd64 python3-setuptools all 66.1.1-1+deb12u2 [522 kB]",
                                "Get:2 http://deb.debian.org/debian bookworm/main amd64 python3-wheel all 0.38.4-2 [30.8 kB]",
                                "Get:3 http://deb.debian.org/debian bookworm/main amd64 python3-pip all 23.0.1+dfsg-1 [1325 kB]",
                                "Fetched 1877 kB in 0s (16.2 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 ... 27766 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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:31.826203Z",
                            "start": "2026-05-26T20:45:26.640323Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:31.860305Z",
                            "start": "2026-05-26T20:45:31.834916Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:31.897134Z",
                            "start": "2026-05-26T20:45:31.870954Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-000000000087",
                        "name": "Ensure setuptools"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "python3",
                                "-m",
                                "ensurepip",
                                "--help"
                            ],
                            "delta": "0:00:00.093492",
                            "end": "2026-05-26 20:45:32.286010",
                            "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-f936-335e-000000000088-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:32.192518",
                            "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-f936-335e-000000000088-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:32.445489Z",
                            "start": "2026-05-26T20:45:31.932961Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:32.494992Z",
                            "start": "2026-05-26T20:45:32.458564Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:32.535275Z",
                            "start": "2026-05-26T20:45:32.507180Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-00000000008a",
                        "name": "Install pip from source"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "command -v python3\n",
                            "delta": "0:00:00.009948",
                            "end": "2026-05-26 20:45:32.853993",
                            "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-f936-335e-00000000008b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:32.844045",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "/usr/bin/python3",
                            "stdout_lines": [
                                "/usr/bin/python3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-f936-335e-00000000008b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:33.081015Z",
                            "start": "2026-05-26T20:45:32.567127Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:33.173784Z",
                            "start": "2026-05-26T20:45:33.095906Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-00000000007f",
                        "name": "ensure-pip",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-pip"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:33.251710Z",
                            "start": "2026-05-26T20:45:33.180996Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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.008591",
                            "end": "2026-05-26 20:45:33.620454",
                            "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-f936-335e-000000000017-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 1,
                            "start": "2026-05-26 20:45:33.611863",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-f936-335e-000000000017-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:33.845348Z",
                            "start": "2026-05-26T20:45:33.333648Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:33.894538Z",
                            "start": "2026-05-26T20:45:33.863692Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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.444801",
                            "end": "2026-05-26 20:45:38.678860",
                            "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-f936-335e-00000000001a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:34.234059",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-f936-335e-00000000001a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:38.944403Z",
                            "start": "2026-05-26T20:45:33.930098Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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.137309",
                            "end": "2026-05-26 20:45:42.388291",
                            "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-f936-335e-00000000001b-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:39.250982",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Collecting tox\n  Downloading tox-4.54.0-py3-none-any.whl (214 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 214.5/214.5 kB 5.1 MB/s eta 0:00:00\nCollecting cachetools>=7.0.3\n  Downloading cachetools-7.1.4-py3-none-any.whl (16 kB)\nCollecting colorama>=0.4.6\n  Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\nCollecting filelock>=3.25\n  Downloading filelock-3.29.0-py3-none-any.whl (39 kB)\nCollecting packaging>=26\n  Downloading packaging-26.2-py3-none-any.whl (100 kB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.2/100.2 kB 10.0 MB/s eta 0:00:00\nCollecting platformdirs>=4.9.4\n  Downloading platformdirs-4.9.6-py3-none-any.whl (21 kB)\nCollecting pluggy>=1.6\n  Downloading pluggy-1.6.0-py3-none-any.whl (20 kB)\nCollecting pyproject-api>=1.10\n  Downloading pyproject_api-1.10.0-py3-none-any.whl (13 kB)\nCollecting python-discovery>=1.2.2\n  Downloading python_discovery-1.3.1-py3-none-any.whl (33 kB)\nCollecting tomli-w>=1.2\n  Downloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)\nCollecting virtualenv>=21.1\n  Downloading virtualenv-21.3.3-py3-none-any.whl (7.6 MB)\n     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 7.6/7.6 MB 22.2 MB/s eta 0:00:00\nCollecting distlib<1,>=0.3.7\n  Downloading distlib-0.4.0-py2.py3-none-any.whl (469 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 469.0/469.0 kB 21.9 MB/s eta 0:00:00\nInstalling collected packages: distlib, tomli-w, pluggy, platformdirs, packaging, filelock, colorama, cachetools, python-discovery, pyproject-api, virtualenv, tox\nSuccessfully installed cachetools-7.1.4 colorama-0.4.6 distlib-0.4.0 filelock-3.29.0 packaging-26.2 platformdirs-4.9.6 pluggy-1.6.0 pyproject-api-1.10.0 python-discovery-1.3.1 tomli-w-1.2.0 tox-4.54.0 virtualenv-21.3.3",
                            "stdout_lines": [
                                "Collecting tox",
                                "  Downloading tox-4.54.0-py3-none-any.whl (214 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 214.5/214.5 kB 5.1 MB/s eta 0:00:00",
                                "Collecting cachetools>=7.0.3",
                                "  Downloading cachetools-7.1.4-py3-none-any.whl (16 kB)",
                                "Collecting colorama>=0.4.6",
                                "  Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)",
                                "Collecting filelock>=3.25",
                                "  Downloading filelock-3.29.0-py3-none-any.whl (39 kB)",
                                "Collecting packaging>=26",
                                "  Downloading packaging-26.2-py3-none-any.whl (100 kB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.2/100.2 kB 10.0 MB/s eta 0:00:00",
                                "Collecting platformdirs>=4.9.4",
                                "  Downloading platformdirs-4.9.6-py3-none-any.whl (21 kB)",
                                "Collecting pluggy>=1.6",
                                "  Downloading pluggy-1.6.0-py3-none-any.whl (20 kB)",
                                "Collecting pyproject-api>=1.10",
                                "  Downloading pyproject_api-1.10.0-py3-none-any.whl (13 kB)",
                                "Collecting python-discovery>=1.2.2",
                                "  Downloading python_discovery-1.3.1-py3-none-any.whl (33 kB)",
                                "Collecting tomli-w>=1.2",
                                "  Downloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)",
                                "Collecting virtualenv>=21.1",
                                "  Downloading virtualenv-21.3.3-py3-none-any.whl (7.6 MB)",
                                "     \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 7.6/7.6 MB 22.2 MB/s eta 0:00:00",
                                "Collecting distlib<1,>=0.3.7",
                                "  Downloading distlib-0.4.0-py2.py3-none-any.whl (469 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 469.0/469.0 kB 21.9 MB/s eta 0:00:00",
                                "Installing collected packages: distlib, tomli-w, pluggy, platformdirs, packaging, filelock, colorama, cachetools, python-discovery, pyproject-api, virtualenv, tox",
                                "Successfully installed cachetools-7.1.4 colorama-0.4.6 distlib-0.4.0 filelock-3.29.0 packaging-26.2 platformdirs-4.9.6 pluggy-1.6.0 pyproject-api-1.10.0 python-discovery-1.3.1 tomli-w-1.2.0 tox-4.54.0 virtualenv-21.3.3"
                            ],
                            "zuul_log_id": "0242ac1f-6606-f936-335e-00000000001b-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:42.493681Z",
                            "start": "2026-05-26T20:45:38.982117Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:42.567614Z",
                            "start": "2026-05-26T20:45:42.499773Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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.328124",
                            "end": "2026-05-26 20:45:43.193467",
                            "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-f936-335e-00000000001e-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:42.865343",
                            "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.54.0 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.54.0 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-f936-335e-00000000001e-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:43.604841Z",
                            "start": "2026-05-26T20:45:42.595093Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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-f936-335e-000000000014",
                        "name": "ensure-tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/ensure-tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:43.634983Z",
                            "start": "2026-05-26T20:45:43.610370Z"
                        },
                        "id": "0242ac1f-6606-f936-335e-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": "main",
    "index": "3",
    "phase": "pre",
    "playbook": "github.com/osism/openstack-project-manager/playbooks/tox.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-26T20:45:48.384738Z",
                    "start": "2026-05-26T20:45:44.534412Z"
                },
                "id": "0242ac1f-6606-99cd-64b9-000000000002",
                "name": "Pre tox play"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "ansible.builtin.apt",
                            "cache_update_time": 1779828325,
                            "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": [
                                        "libldap2-dev",
                                        "libsasl2-dev"
                                    ],
                                    "only_upgrade": false,
                                    "package": [
                                        "libldap2-dev",
                                        "libsasl2-dev"
                                    ],
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": true,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            },
                            "stderr": "debconf: delaying package configuration, since apt-utils is not installed\n",
                            "stderr_lines": [
                                "debconf: delaying package configuration, since apt-utils is not installed"
                            ],
                            "stdout": "Reading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  libldap-dev\nThe following NEW packages will be installed:\n  libldap-dev libldap2-dev libsasl2-dev\n0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.\nNeed to get 555 kB of archives.\nAfter this operation, 2561 kB of additional disk space will be used.\nGet:1 http://deb.debian.org/debian bookworm/main amd64 libldap-dev amd64 2.5.13+dfsg-5 [298 kB]\nGet:2 http://deb.debian.org/debian bookworm/main amd64 libldap2-dev all 2.5.13+dfsg-5 [22.6 kB]\nGet:3 http://deb.debian.org/debian bookworm/main amd64 libsasl2-dev amd64 2.1.28+dfsg-10 [235 kB]\nFetched 555 kB in 0s (6133 kB/s)\nSelecting previously unselected package libldap-dev:amd64.\r\n(Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 28689 files and directories currently installed.)\r\nPreparing to unpack .../libldap-dev_2.5.13+dfsg-5_amd64.deb ...\r\nUnpacking libldap-dev:amd64 (2.5.13+dfsg-5) ...\r\nSelecting previously unselected package libldap2-dev.\r\nPreparing to unpack .../libldap2-dev_2.5.13+dfsg-5_all.deb ...\r\nUnpacking libldap2-dev (2.5.13+dfsg-5) ...\r\nSelecting previously unselected package libsasl2-dev.\r\nPreparing to unpack .../libsasl2-dev_2.1.28+dfsg-10_amd64.deb ...\r\nUnpacking libsasl2-dev (2.1.28+dfsg-10) ...\r\nSetting up libsasl2-dev (2.1.28+dfsg-10) ...\r\nSetting up libldap-dev:amd64 (2.5.13+dfsg-5) ...\r\nSetting up libldap2-dev (2.5.13+dfsg-5) ...\r\n",
                            "stdout_lines": [
                                "Reading package lists...",
                                "Building dependency tree...",
                                "Reading state information...",
                                "The following additional packages will be installed:",
                                "  libldap-dev",
                                "The following NEW packages will be installed:",
                                "  libldap-dev libldap2-dev libsasl2-dev",
                                "0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.",
                                "Need to get 555 kB of archives.",
                                "After this operation, 2561 kB of additional disk space will be used.",
                                "Get:1 http://deb.debian.org/debian bookworm/main amd64 libldap-dev amd64 2.5.13+dfsg-5 [298 kB]",
                                "Get:2 http://deb.debian.org/debian bookworm/main amd64 libldap2-dev all 2.5.13+dfsg-5 [22.6 kB]",
                                "Get:3 http://deb.debian.org/debian bookworm/main amd64 libsasl2-dev amd64 2.1.28+dfsg-10 [235 kB]",
                                "Fetched 555 kB in 0s (6133 kB/s)",
                                "Selecting previously unselected package libldap-dev:amd64.",
                                "(Reading database ... ",
                                "(Reading database ... 5%",
                                "(Reading database ... 10%",
                                "(Reading database ... 15%",
                                "(Reading database ... 20%",
                                "(Reading database ... 25%",
                                "(Reading database ... 30%",
                                "(Reading database ... 35%",
                                "(Reading database ... 40%",
                                "(Reading database ... 45%",
                                "(Reading database ... 50%",
                                "(Reading database ... 55%",
                                "(Reading database ... 60%",
                                "(Reading database ... 65%",
                                "(Reading database ... 70%",
                                "(Reading database ... 75%",
                                "(Reading database ... 80%",
                                "(Reading database ... 85%",
                                "(Reading database ... 90%",
                                "(Reading database ... 95%",
                                "(Reading database ... 100%",
                                "(Reading database ... 28689 files and directories currently installed.)",
                                "Preparing to unpack .../libldap-dev_2.5.13+dfsg-5_amd64.deb ...",
                                "Unpacking libldap-dev:amd64 (2.5.13+dfsg-5) ...",
                                "Selecting previously unselected package libldap2-dev.",
                                "Preparing to unpack .../libldap2-dev_2.5.13+dfsg-5_all.deb ...",
                                "Unpacking libldap2-dev (2.5.13+dfsg-5) ...",
                                "Selecting previously unselected package libsasl2-dev.",
                                "Preparing to unpack .../libsasl2-dev_2.1.28+dfsg-10_amd64.deb ...",
                                "Unpacking libsasl2-dev (2.1.28+dfsg-10) ...",
                                "Setting up libsasl2-dev (2.1.28+dfsg-10) ...",
                                "Setting up libldap-dev:amd64 (2.5.13+dfsg-5) ...",
                                "Setting up libldap2-dev (2.5.13+dfsg-5) ..."
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:48.384738Z",
                            "start": "2026-05-26T20:45:44.561700Z"
                        },
                        "id": "0242ac1f-6606-99cd-64b9-000000000004",
                        "name": "Ensure required APT packages are installed"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 1,
            "rescued": 0,
            "skipped": 0,
            "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-05-26T20:46:23.289199Z",
                    "start": "2026-05-26T20:45:49.249459Z"
                },
                "id": "0242ac1f-6606-36a0-36ec-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "sudo",
                                "-n",
                                "true"
                            ],
                            "delta": "0:00:00.024332",
                            "end": "2026-05-26 20:45:49.737829",
                            "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-36a0-36ec-000000000008-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:49.713497",
                            "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-36a0-36ec-000000000008-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-000000000006",
                        "name": "revoke-sudo",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/revoke-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:49.805534Z",
                            "start": "2026-05-26T20:45:49.285888Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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.007572",
                            "end": "2026-05-26 20:45:50.136346",
                            "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-36a0-36ec-000000000009-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:50.128774",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-36a0-36ec-000000000009-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-000000000006",
                        "name": "revoke-sudo",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/revoke-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:50.346684Z",
                            "start": "2026-05-26T20:45:49.835556Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000009",
                        "name": "Remove sudo access for zuul user."
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "! sudo -n true",
                            "delta": "0:00:00.025342",
                            "end": "2026-05-26 20:45:50.667204",
                            "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-36a0-36ec-00000000000a-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:50.641862",
                            "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-36a0-36ec-00000000000a-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-000000000006",
                        "name": "revoke-sudo",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/revoke-sudo"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:50.895325Z",
                            "start": "2026-05-26T20:45:50.381399Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:50.952515Z",
                            "start": "2026-05-26T20:45:50.915129Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:51.002574Z",
                            "start": "2026-05-26T20:45:50.966856Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:51.051665Z",
                            "start": "2026-05-26T20:45:51.013419Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000010",
                        "name": "Record file location"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "siblings.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:45:51.111578Z",
                            "start": "2026-05-26T20:45:51.062037Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000011",
                        "name": "Install tox siblings"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "--notest",
                                "-etest",
                                "-vv",
                                "--skip-missing-interpreters=false"
                            ],
                            "delta": "0:00:23.376101",
                            "end": "2026-05-26 20:46:14.805466",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox  --notest  -etest  -vv --skip-missing-interpreters=false",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/openstack-project-manager",
                                    "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-36a0-36ec-000000000053-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:45:51.429365",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "ROOT: 214 D setup logging to DEBUG on pid 1901 [tox/report.py:229]\ntest: 246 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]\ntest: 249 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]\ntest: 250 D filesystem is case-sensitive [python_discovery/_compat.py:18]\ntest: 254 D get interpreter info via cmd: /usr/bin/python3.11 /home/zuul/.local/tox/lib/python3.11/site-packages/python_discovery/_py_info.py 437165ad01e1117294b35309416e0c81 2e3821890ebe465c8b0eb838514e02ec [python_discovery/_cached_py_info.py:198]\ntest: 338 D wrote python info of /usr/bin/python3.11 at /home/zuul/.cache/virtualenv/py_info/4/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:159]\ntest: 339 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]\ntest: 339 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]\ntest: 344 D symlink on filesystem does work [virtualenv/info.py:51]\ntest: 344 D filesystem is case-sensitive [virtualenv/info.py:28]\ntest: 382 I create virtual environment via CPython3Posix(dest=/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test, clear=False, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:77]\ntest: 383 D create folder /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin [virtualenv/util/path/_sync.py:18]\ntest: 383 D create folder /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/include [virtualenv/util/path/_sync.py:18]\ntest: 383 D create folder /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages [virtualenv/util/path/_sync.py:18]\ntest: 383 D write /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]\ntest: 383 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tvirtualenv = 21.3.3 [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]\ntest: 384 D symlink /usr/bin/python3.11 to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin/python [virtualenv/util/path/_sync.py:38]\ntest: 385 D create virtualenv import hook file /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:118]\ntest: 385 D create /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:121]\ntest: 385 D ============================== target debug ============================== [virtualenv/run/session.py:79]\ntest: 386 D debug via /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin/python /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:265]\ntest: 385 D {\n  \"sys\": {\n    \"executable\": \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin/python\",\n    \"_base_executable\": \"/usr/bin/python3.11\",\n    \"prefix\": \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test\",\n    \"base_prefix\": \"/usr\",\n    \"real_prefix\": null,\n    \"exec_prefix\": \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test\",\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/openstack-project-manager/.tox/test/lib/python3.11/site-packages\"\n    ],\n    \"meta_path\": [\n      \"<class '_virtualenv._Finder'>\",\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, Apr  8 2026, 01:58:00) [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]\ntest: 437 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]\ntest: 447 D install pip from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/pip-26.1.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]\ntest: 448 D build install image for pip-26.1.1-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]\ntest: 454 D install setuptools from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/setuptools-82.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]\ntest: 456 D build install image for setuptools-82.0.1-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]\ntest: 878 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/setuptools [virtualenv/util/path/_sync.py:46]\ntest: 919 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any/pip-26.1.1.dist-info to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/pip-26.1.1.dist-info [virtualenv/util/path/_sync.py:46]\ntest: 937 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any/pip to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/pip [virtualenv/util/path/_sync.py:46]\ntest: 1058 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/_distutils_hack to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:46]\ntest: 1059 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.dist-info to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/setuptools-82.0.1.dist-info [virtualenv/util/path/_sync.py:46]\ntest: 1062 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/distutils-precedence.pth to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:46]\ntest: 1063 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.virtualenv to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/setuptools-82.0.1.virtualenv [virtualenv/util/path/_sync.py:46]\ntest: 1063 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]\ntest: 1080 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any/pip-26.1.1.virtualenv to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/pip-26.1.1.virtualenv [virtualenv/util/path/_sync.py:46]\ntest: 1081 D generated console scripts pip3 pip-3.11 pip pip3.11 [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]\ntest: 1081 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python, Xonsh [virtualenv/run/session.py:90]\ntest: 1090 D write /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]\ntest: 1090 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:51]\ntest: 1090 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:51]\ntest: 1090 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tvirtualenv = 21.3.3 [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]\ntest: 1091 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]\ntest: 1099 W install_deps> python -I -m pip install -r requirements.txt [tox/tox_env/api.py:485]\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 click==8.3.2 (from -r requirements.txt (line 2))\n  Downloading click-8.3.2-py3-none-any.whl.metadata (2.6 kB)\nCollecting deepmerge==2.0 (from -r requirements.txt (line 3))\n  Downloading deepmerge-2.0-py3-none-any.whl.metadata (3.5 kB)\nCollecting dynaconf==3.2.13 (from -r requirements.txt (line 4))\n  Downloading dynaconf-3.2.13-py2.py3-none-any.whl.metadata (9.4 kB)\nCollecting loguru==0.7.3 (from -r requirements.txt (line 5))\n  Downloading loguru-0.7.3-py3-none-any.whl.metadata (22 kB)\nCollecting openstacksdk==4.10.0 (from -r requirements.txt (line 6))\n  Downloading openstacksdk-4.10.0-py3-none-any.whl.metadata (12 kB)\nCollecting os-client-config==2.3.0 (from -r requirements.txt (line 7))\n  Downloading os_client_config-2.3.0-py3-none-any.whl.metadata (2.5 kB)\nCollecting python-ldap==3.4.5 (from -r requirements.txt (line 8))\n  Downloading python_ldap-3.4.5.tar.gz (388 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 python-neutronclient==11.8.0 (from -r requirements.txt (line 9))\n  Downloading python_neutronclient-11.8.0-py3-none-any.whl.metadata (3.5 kB)\nCollecting tabulate==0.10.0 (from -r requirements.txt (line 10))\n  Downloading tabulate-0.10.0-py3-none-any.whl.metadata (40 kB)\nCollecting typer==0.26.1 (from -r requirements.txt (line 11))\n  Downloading typer-0.26.1-py3-none-any.whl.metadata (16 kB)\nCollecting cryptography>=2.7 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading cryptography-48.0.0-cp311-abi3-manylinux_2_34_x86_64.whl.metadata (4.3 kB)\nCollecting decorator>=4.4.1 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading decorator-5.3.1-py3-none-any.whl.metadata (3.9 kB)\nCollecting dogpile.cache>=0.6.5 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading dogpile_cache-1.5.0-py3-none-any.whl.metadata (5.5 kB)\nCollecting iso8601>=0.1.11 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading iso8601-2.1.0-py3-none-any.whl.metadata (3.7 kB)\nCollecting jmespath>=0.9.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading jmespath-1.1.0-py3-none-any.whl.metadata (7.6 kB)\nCollecting jsonpatch!=1.20,>=1.16 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading jsonpatch-1.33-py2.py3-none-any.whl.metadata (3.0 kB)\nCollecting keystoneauth1>=5.10.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading keystoneauth1-5.14.0-py3-none-any.whl.metadata (2.9 kB)\nCollecting os-service-types>=1.8.1 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading os_service_types-1.8.2-py3-none-any.whl.metadata (1.9 kB)\nCollecting pbr!=2.1.0,>=2.0.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading pbr-7.0.3-py2.py3-none-any.whl.metadata (3.8 kB)\nCollecting platformdirs>=3 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading platformdirs-4.9.6-py3-none-any.whl.metadata (4.7 kB)\nCollecting psutil>=3.2.2 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\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 requestsexceptions>=1.2.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading requestsexceptions-1.4.0-py2.py3-none-any.whl.metadata (1.2 kB)\nCollecting typing-extensions>=4.12.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)\nCollecting pyasn1>=0.3.7 (from python-ldap==3.4.5->-r requirements.txt (line 8))\n  Downloading pyasn1-0.6.3-py3-none-any.whl.metadata (8.4 kB)\nCollecting pyasn1_modules>=0.1.5 (from python-ldap==3.4.5->-r requirements.txt (line 8))\n  Downloading pyasn1_modules-0.4.2-py3-none-any.whl.metadata (3.5 kB)\nCollecting cliff>=3.4.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading cliff-4.14.0-py3-none-any.whl.metadata (2.1 kB)\nCollecting debtcollector>=1.2.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading debtcollector-3.1.0-py3-none-any.whl.metadata (2.6 kB)\nCollecting netaddr>=0.7.18 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading netaddr-1.3.0-py3-none-any.whl.metadata (5.0 kB)\nCollecting osc-lib>=1.12.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading osc_lib-4.6.0-py3-none-any.whl.metadata (3.8 kB)\nCollecting oslo.i18n>=3.15.3 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading oslo_i18n-6.8.0-py3-none-any.whl.metadata (2.0 kB)\nCollecting oslo.log>=3.36.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading oslo_log-8.2.0-py3-none-any.whl.metadata (2.5 kB)\nCollecting oslo.serialization!=2.19.1,>=2.18.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading oslo_serialization-5.10.0-py3-none-any.whl.metadata (2.1 kB)\nCollecting oslo.utils>=3.33.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading oslo_utils-10.0.1-py3-none-any.whl.metadata (2.1 kB)\nCollecting python-keystoneclient>=3.8.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading python_keystoneclient-5.8.0-py3-none-any.whl.metadata (3.8 kB)\nCollecting requests>=2.14.2 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading requests-2.34.2-py3-none-any.whl.metadata (4.8 kB)\nCollecting shellingham>=1.3.0 (from typer==0.26.1->-r requirements.txt (line 11))\n  Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)\nCollecting rich>=13.8.0 (from typer==0.26.1->-r requirements.txt (line 11))\n  Downloading rich-15.0.0-py3-none-any.whl.metadata (18 kB)\nCollecting annotated-doc>=0.0.2 (from typer==0.26.1->-r requirements.txt (line 11))\n  Downloading annotated_doc-0.0.4-py3-none-any.whl.metadata (6.6 kB)\nCollecting autopage>=0.4.0 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading autopage-0.6.0-py3-none-any.whl.metadata (8.1 kB)\nCollecting cmd2>=3.0.0 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading cmd2-3.5.1-py3-none-any.whl.metadata (16 kB)\nCollecting PrettyTable>=0.7.2 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading prettytable-3.17.0-py3-none-any.whl.metadata (34 kB)\nCollecting stevedore>=5.6.0 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading stevedore-5.8.0-py3-none-any.whl.metadata (2.3 kB)\nCollecting pyperclip>=1.8.2 (from cmd2>=3.0.0->cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading pyperclip-1.11.0-py3-none-any.whl.metadata (2.4 kB)\nCollecting rich-argparse>=1.7.2 (from cmd2>=3.0.0->cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading rich_argparse-1.8.0-py3-none-any.whl.metadata (15 kB)\nCollecting cffi>=2.0.0 (from cryptography>=2.7->openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.6 kB)\nCollecting pycparser (from cffi>=2.0.0->cryptography>=2.7->openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading pycparser-3.0-py3-none-any.whl.metadata (8.2 kB)\nCollecting wrapt>=2.1.0 (from debtcollector>=1.2.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading wrapt-2.2.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (7.4 kB)\nCollecting jsonpointer>=1.9 (from jsonpatch!=1.20,>=1.16->openstacksdk==4.10.0->-r requirements.txt (line 6))\n  Downloading jsonpointer-3.1.1-py3-none-any.whl.metadata (2.4 kB)\nINFO: pip is looking at multiple versions of osc-lib to determine which version is compatible with other requirements. This could take a while.\nCollecting osc-lib>=1.12.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading osc_lib-4.5.0-py3-none-any.whl.metadata (3.8 kB)\nCollecting oslo.config>=5.2.0 (from oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading oslo_config-10.4.0-py3-none-any.whl.metadata (2.3 kB)\nCollecting oslo.context>=2.21.0 (from oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading oslo_context-6.4.0-py3-none-any.whl.metadata (2.3 kB)\nCollecting python-dateutil>=2.7.0 (from oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)\nCollecting rfc3986>=1.2.0 (from oslo.config>=5.2.0->oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading rfc3986-2.0.0-py2.py3-none-any.whl.metadata (6.6 kB)\nCollecting msgpack>=0.5.2 (from oslo.serialization!=2.19.1,>=2.18.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading msgpack-1.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (8.1 kB)\nCollecting pyparsing>=2.1.0 (from oslo.utils>=3.33.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading pyparsing-3.3.2-py3-none-any.whl.metadata (5.8 kB)\nCollecting packaging>=20.4 (from oslo.utils>=3.33.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Using cached packaging-26.2-py3-none-any.whl.metadata (3.5 kB)\nRequirement already satisfied: setuptools in ./.tox/test/lib/python3.11/site-packages (from pbr!=2.1.0,>=2.0.0->openstacksdk==4.10.0->-r requirements.txt (line 6)) (82.0.1)\nCollecting wcwidth (from PrettyTable>=0.7.2->cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading wcwidth-0.7.0-py3-none-any.whl.metadata (36 kB)\nCollecting six>=1.5 (from python-dateutil>=2.7.0->oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)\nCollecting charset_normalizer<4,>=2 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading charset_normalizer-3.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)\nCollecting idna<4,>=2.5 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading idna-3.16-py3-none-any.whl.metadata (6.4 kB)\nCollecting urllib3<3,>=1.26 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading urllib3-2.7.0-py3-none-any.whl.metadata (6.9 kB)\nCollecting certifi>=2023.5.7 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))\n  Downloading certifi-2026.5.20-py3-none-any.whl.metadata (2.5 kB)\nCollecting markdown-it-py>=2.2.0 (from rich>=13.8.0->typer==0.26.1->-r requirements.txt (line 11))\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>=13.8.0->typer==0.26.1->-r requirements.txt (line 11))\n  Downloading pygments-2.20.0-py3-none-any.whl.metadata (2.5 kB)\nCollecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=13.8.0->typer==0.26.1->-r requirements.txt (line 11))\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.3 MB/s  0:00:00\nDownloading click-8.3.2-py3-none-any.whl (108 kB)\nDownloading deepmerge-2.0-py3-none-any.whl (13 kB)\nDownloading dynaconf-3.2.13-py2.py3-none-any.whl (238 kB)\nDownloading loguru-0.7.3-py3-none-any.whl (61 kB)\nDownloading openstacksdk-4.10.0-py3-none-any.whl (1.9 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.9/1.9 MB 13.8 MB/s  0:00:00\nDownloading os_client_config-2.3.0-py3-none-any.whl (30 kB)\nDownloading python_neutronclient-11.8.0-py3-none-any.whl (296 kB)\nDownloading tabulate-0.10.0-py3-none-any.whl (39 kB)\nDownloading typer-0.26.1-py3-none-any.whl (123 kB)\nDownloading annotated_doc-0.0.4-py3-none-any.whl (5.3 kB)\nDownloading cliff-4.14.0-py3-none-any.whl (86 kB)\nDownloading autopage-0.6.0-py3-none-any.whl (30 kB)\nDownloading cmd2-3.5.1-py3-none-any.whl (147 kB)\nDownloading cryptography-48.0.0-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 24.0 MB/s  0:00:00\nDownloading cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (215 kB)\nDownloading debtcollector-3.1.0-py3-none-any.whl (24 kB)\nDownloading decorator-5.3.1-py3-none-any.whl (10 kB)\nDownloading dogpile_cache-1.5.0-py3-none-any.whl (64 kB)\nDownloading iso8601-2.1.0-py3-none-any.whl (7.5 kB)\nDownloading jmespath-1.1.0-py3-none-any.whl (20 kB)\nDownloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB)\nDownloading jsonpointer-3.1.1-py3-none-any.whl (7.7 kB)\nDownloading keystoneauth1-5.14.0-py3-none-any.whl (343 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 23.3 MB/s  0:00:00\nDownloading os_service_types-1.8.2-py3-none-any.whl (24 kB)\nDownloading osc_lib-4.5.0-py3-none-any.whl (96 kB)\nDownloading oslo_i18n-6.8.0-py3-none-any.whl (47 kB)\nDownloading oslo_log-8.2.0-py3-none-any.whl (77 kB)\nDownloading oslo_config-10.4.0-py3-none-any.whl (137 kB)\nDownloading oslo_context-6.4.0-py3-none-any.whl (20 kB)\nDownloading oslo_serialization-5.10.0-py3-none-any.whl (27 kB)\nDownloading msgpack-1.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (426 kB)\nDownloading oslo_utils-10.0.1-py3-none-any.whl (136 kB)\nUsing cached packaging-26.2-py3-none-any.whl (100 kB)\nDownloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)\nDownloading platformdirs-4.9.6-py3-none-any.whl (21 kB)\nDownloading prettytable-3.17.0-py3-none-any.whl (34 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 pyasn1-0.6.3-py3-none-any.whl (83 kB)\nDownloading pyasn1_modules-0.4.2-py3-none-any.whl (181 kB)\nDownloading pyparsing-3.3.2-py3-none-any.whl (122 kB)\nDownloading pyperclip-1.11.0-py3-none-any.whl (11 kB)\nDownloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)\nDownloading python_keystoneclient-5.8.0-py3-none-any.whl (397 kB)\nDownloading requests-2.34.2-py3-none-any.whl (73 kB)\nDownloading charset_normalizer-3.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (214 kB)\nDownloading idna-3.16-py3-none-any.whl (74 kB)\nDownloading urllib3-2.7.0-py3-none-any.whl (131 kB)\nDownloading certifi-2026.5.20-py3-none-any.whl (134 kB)\nDownloading requestsexceptions-1.4.0-py2.py3-none-any.whl (3.8 kB)\nDownloading rfc3986-2.0.0-py2.py3-none-any.whl (31 kB)\nDownloading rich-15.0.0-py3-none-any.whl (310 kB)\nDownloading pygments-2.20.0-py3-none-any.whl (1.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 1.2/1.2 MB 16.3 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 rich_argparse-1.8.0-py3-none-any.whl (25 kB)\nDownloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)\nDownloading six-1.17.0-py2.py3-none-any.whl (11 kB)\nDownloading stevedore-5.8.0-py3-none-any.whl (54 kB)\nDownloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)\nDownloading wrapt-2.2.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (159 kB)\nDownloading pycparser-3.0-py3-none-any.whl (48 kB)\nDownloading wcwidth-0.7.0-py3-none-any.whl (110 kB)\nBuilding wheels for collected packages: python-ldap\n  Building wheel for python-ldap (pyproject.toml): started\n  Building wheel for python-ldap (pyproject.toml): finished with status 'done'\n  Created wheel for python-ldap: filename=python_ldap-3.4.5-cp311-cp311-linux_x86_64.whl size=374042 sha256=ce16cf7181566721ebf703ede381f701da0ec98a6a700c078dfb9a45092b8de4\n  Stored in directory: /home/zuul/.cache/pip/wheels/a4/b4/c9/fb4c51b9c74b8ece688137b6a8f3a0b1d92aa2618e9cf3f66c\nSuccessfully built python-ldap\nInstalling collected packages: requestsexceptions, pyperclip, wrapt, wcwidth, urllib3, typing-extensions, tabulate, stevedore, six, shellingham, rfc3986, PyYAML, pyparsing, pygments, pycparser, pyasn1, psutil, platformdirs, pbr, packaging, netaddr, msgpack, mdurl, loguru, jsonpointer, jmespath, iso8601, idna, dynaconf, deepmerge, decorator, click, charset_normalizer, certifi, autopage, annotated-doc, requests, python-dateutil, pyasn1_modules, PrettyTable, oslo.i18n, oslo.context, os-service-types, markdown-it-py, jsonpatch, dogpile.cache, debtcollector, cffi, rich, python-ldap, oslo.utils, oslo.config, keystoneauth1, cryptography, typer, rich-argparse, oslo.serialization, openstacksdk, python-keystoneclient, oslo.log, os-client-config, cmd2, cliff, osc-lib, python-neutronclient\n\nSuccessfully installed PrettyTable-3.17.0 PyYAML-6.0.3 annotated-doc-0.0.4 autopage-0.6.0 certifi-2026.5.20 cffi-2.0.0 charset_normalizer-3.4.7 click-8.3.2 cliff-4.14.0 cmd2-3.5.1 cryptography-48.0.0 debtcollector-3.1.0 decorator-5.3.1 deepmerge-2.0 dogpile.cache-1.5.0 dynaconf-3.2.13 idna-3.16 iso8601-2.1.0 jmespath-1.1.0 jsonpatch-1.33 jsonpointer-3.1.1 keystoneauth1-5.14.0 loguru-0.7.3 markdown-it-py-4.2.0 mdurl-0.1.2 msgpack-1.1.2 netaddr-1.3.0 openstacksdk-4.10.0 os-client-config-2.3.0 os-service-types-1.8.2 osc-lib-4.5.0 oslo.config-10.4.0 oslo.context-6.4.0 oslo.i18n-6.8.0 oslo.log-8.2.0 oslo.serialization-5.10.0 oslo.utils-10.0.1 packaging-26.2 pbr-7.0.3 platformdirs-4.9.6 psutil-7.2.2 pyasn1-0.6.3 pyasn1_modules-0.4.2 pycparser-3.0 pygments-2.20.0 pyparsing-3.3.2 pyperclip-1.11.0 python-dateutil-2.9.0.post0 python-keystoneclient-5.8.0 python-ldap-3.4.5 python-neutronclient-11.8.0 requests-2.34.2 requestsexceptions-1.4.0 rfc3986-2.0.0 rich-15.0.0 rich-argparse-1.8.0 shellingham-1.5.4 six-1.17.0 stevedore-5.8.0 tabulate-0.10.0 typer-0.26.1 typing-extensions-4.15.0 urllib3-2.7.0 wcwidth-0.7.0 wrapt-2.2.1\ntest: 23290 I exit 0 (22.19 seconds) /home/zuul/src/github.com/osism/openstack-project-manager> python -I -m pip install -r requirements.txt pid=1914 [tox/execute/api.py:311]\n  [tox] unused config key(s): basepython\n  test: OK (23.05 seconds)\n  congratulations :) (23.08 seconds)",
                            "stdout_lines": [
                                "ROOT: 214 D setup logging to DEBUG on pid 1901 [tox/report.py:229]",
                                "test: 246 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]",
                                "test: 249 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]",
                                "test: 250 D filesystem is case-sensitive [python_discovery/_compat.py:18]",
                                "test: 254 D get interpreter info via cmd: /usr/bin/python3.11 /home/zuul/.local/tox/lib/python3.11/site-packages/python_discovery/_py_info.py 437165ad01e1117294b35309416e0c81 2e3821890ebe465c8b0eb838514e02ec [python_discovery/_cached_py_info.py:198]",
                                "test: 338 D wrote python info of /usr/bin/python3.11 at /home/zuul/.cache/virtualenv/py_info/4/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:159]",
                                "test: 339 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]",
                                "test: 339 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]",
                                "test: 344 D symlink on filesystem does work [virtualenv/info.py:51]",
                                "test: 344 D filesystem is case-sensitive [virtualenv/info.py:28]",
                                "test: 382 I create virtual environment via CPython3Posix(dest=/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test, clear=False, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:77]",
                                "test: 383 D create folder /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin [virtualenv/util/path/_sync.py:18]",
                                "test: 383 D create folder /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/include [virtualenv/util/path/_sync.py:18]",
                                "test: 383 D create folder /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages [virtualenv/util/path/_sync.py:18]",
                                "test: 383 D write /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]",
                                "test: 383 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tvirtualenv = 21.3.3 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 384 D symlink /usr/bin/python3.11 to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin/python [virtualenv/util/path/_sync.py:38]",
                                "test: 385 D create virtualenv import hook file /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:118]",
                                "test: 385 D create /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:121]",
                                "test: 385 D ============================== target debug ============================== [virtualenv/run/session.py:79]",
                                "test: 386 D debug via /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin/python /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:265]",
                                "test: 385 D {",
                                "  \"sys\": {",
                                "    \"executable\": \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/bin/python\",",
                                "    \"_base_executable\": \"/usr/bin/python3.11\",",
                                "    \"prefix\": \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test\",",
                                "    \"base_prefix\": \"/usr\",",
                                "    \"real_prefix\": null,",
                                "    \"exec_prefix\": \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test\",",
                                "    \"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/openstack-project-manager/.tox/test/lib/python3.11/site-packages\"",
                                "    ],",
                                "    \"meta_path\": [",
                                "      \"<class '_virtualenv._Finder'>\",",
                                "      \"<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, Apr  8 2026, 01:58:00) [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]",
                                "test: 437 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]",
                                "test: 447 D install pip from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/pip-26.1.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]",
                                "test: 448 D build install image for pip-26.1.1-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]",
                                "test: 454 D install setuptools from wheel /home/zuul/.local/tox/lib/python3.11/site-packages/virtualenv/seed/wheels/embed/setuptools-82.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]",
                                "test: 456 D build install image for setuptools-82.0.1-py3-none-any.whl to /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any [virtualenv/seed/embed/via_app_data/pip_install/base.py:81]",
                                "test: 878 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/setuptools [virtualenv/util/path/_sync.py:46]",
                                "test: 919 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any/pip-26.1.1.dist-info to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/pip-26.1.1.dist-info [virtualenv/util/path/_sync.py:46]",
                                "test: 937 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any/pip to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/pip [virtualenv/util/path/_sync.py:46]",
                                "test: 1058 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/_distutils_hack to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:46]",
                                "test: 1059 D copy directory /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.dist-info to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/setuptools-82.0.1.dist-info [virtualenv/util/path/_sync.py:46]",
                                "test: 1062 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/distutils-precedence.pth to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:46]",
                                "test: 1063 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.virtualenv to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/setuptools-82.0.1.virtualenv [virtualenv/util/path/_sync.py:46]",
                                "test: 1063 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]",
                                "test: 1080 D copy /home/zuul/.cache/virtualenv/wheel/3.11/image/1/CopyPipInstall/pip-26.1.1-py3-none-any/pip-26.1.1.virtualenv to /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/pip-26.1.1.virtualenv [virtualenv/util/path/_sync.py:46]",
                                "test: 1081 D generated console scripts pip3 pip-3.11 pip pip3.11 [virtualenv/seed/embed/via_app_data/pip_install/base.py:69]",
                                "test: 1081 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python, Xonsh [virtualenv/run/session.py:90]",
                                "test: 1090 D write /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]",
                                "test: 1090 D \thome = /usr/bin [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1090 D \timplementation = CPython [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1090 D \tversion_info = 3.11.2.final.0 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tversion = 3.11.2 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \texecutable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tcommand = /home/zuul/.local/tox/bin/python3 -m virtualenv /home/zuul/src/github.com/osism/openstack-project-manager/.tox/test [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tvirtualenv = 21.3.3 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tinclude-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tbase-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tbase-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1091 D \tbase-executable = /usr/bin/python3.11 [virtualenv/create/pyenv_cfg.py:51]",
                                "test: 1099 W install_deps> python -I -m pip install -r requirements.txt [tox/tox_env/api.py:485]",
                                "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 click==8.3.2 (from -r requirements.txt (line 2))",
                                "  Downloading click-8.3.2-py3-none-any.whl.metadata (2.6 kB)",
                                "Collecting deepmerge==2.0 (from -r requirements.txt (line 3))",
                                "  Downloading deepmerge-2.0-py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting dynaconf==3.2.13 (from -r requirements.txt (line 4))",
                                "  Downloading dynaconf-3.2.13-py2.py3-none-any.whl.metadata (9.4 kB)",
                                "Collecting loguru==0.7.3 (from -r requirements.txt (line 5))",
                                "  Downloading loguru-0.7.3-py3-none-any.whl.metadata (22 kB)",
                                "Collecting openstacksdk==4.10.0 (from -r requirements.txt (line 6))",
                                "  Downloading openstacksdk-4.10.0-py3-none-any.whl.metadata (12 kB)",
                                "Collecting os-client-config==2.3.0 (from -r requirements.txt (line 7))",
                                "  Downloading os_client_config-2.3.0-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting python-ldap==3.4.5 (from -r requirements.txt (line 8))",
                                "  Downloading python_ldap-3.4.5.tar.gz (388 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 python-neutronclient==11.8.0 (from -r requirements.txt (line 9))",
                                "  Downloading python_neutronclient-11.8.0-py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting tabulate==0.10.0 (from -r requirements.txt (line 10))",
                                "  Downloading tabulate-0.10.0-py3-none-any.whl.metadata (40 kB)",
                                "Collecting typer==0.26.1 (from -r requirements.txt (line 11))",
                                "  Downloading typer-0.26.1-py3-none-any.whl.metadata (16 kB)",
                                "Collecting cryptography>=2.7 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading cryptography-48.0.0-cp311-abi3-manylinux_2_34_x86_64.whl.metadata (4.3 kB)",
                                "Collecting decorator>=4.4.1 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading decorator-5.3.1-py3-none-any.whl.metadata (3.9 kB)",
                                "Collecting dogpile.cache>=0.6.5 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading dogpile_cache-1.5.0-py3-none-any.whl.metadata (5.5 kB)",
                                "Collecting iso8601>=0.1.11 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading iso8601-2.1.0-py3-none-any.whl.metadata (3.7 kB)",
                                "Collecting jmespath>=0.9.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading jmespath-1.1.0-py3-none-any.whl.metadata (7.6 kB)",
                                "Collecting jsonpatch!=1.20,>=1.16 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading jsonpatch-1.33-py2.py3-none-any.whl.metadata (3.0 kB)",
                                "Collecting keystoneauth1>=5.10.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading keystoneauth1-5.14.0-py3-none-any.whl.metadata (2.9 kB)",
                                "Collecting os-service-types>=1.8.1 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading os_service_types-1.8.2-py3-none-any.whl.metadata (1.9 kB)",
                                "Collecting pbr!=2.1.0,>=2.0.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading pbr-7.0.3-py2.py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting platformdirs>=3 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading platformdirs-4.9.6-py3-none-any.whl.metadata (4.7 kB)",
                                "Collecting psutil>=3.2.2 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  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 requestsexceptions>=1.2.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading requestsexceptions-1.4.0-py2.py3-none-any.whl.metadata (1.2 kB)",
                                "Collecting typing-extensions>=4.12.0 (from openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)",
                                "Collecting pyasn1>=0.3.7 (from python-ldap==3.4.5->-r requirements.txt (line 8))",
                                "  Downloading pyasn1-0.6.3-py3-none-any.whl.metadata (8.4 kB)",
                                "Collecting pyasn1_modules>=0.1.5 (from python-ldap==3.4.5->-r requirements.txt (line 8))",
                                "  Downloading pyasn1_modules-0.4.2-py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting cliff>=3.4.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading cliff-4.14.0-py3-none-any.whl.metadata (2.1 kB)",
                                "Collecting debtcollector>=1.2.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading debtcollector-3.1.0-py3-none-any.whl.metadata (2.6 kB)",
                                "Collecting netaddr>=0.7.18 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading netaddr-1.3.0-py3-none-any.whl.metadata (5.0 kB)",
                                "Collecting osc-lib>=1.12.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading osc_lib-4.6.0-py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting oslo.i18n>=3.15.3 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading oslo_i18n-6.8.0-py3-none-any.whl.metadata (2.0 kB)",
                                "Collecting oslo.log>=3.36.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading oslo_log-8.2.0-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting oslo.serialization!=2.19.1,>=2.18.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading oslo_serialization-5.10.0-py3-none-any.whl.metadata (2.1 kB)",
                                "Collecting oslo.utils>=3.33.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading oslo_utils-10.0.1-py3-none-any.whl.metadata (2.1 kB)",
                                "Collecting python-keystoneclient>=3.8.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading python_keystoneclient-5.8.0-py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting requests>=2.14.2 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading requests-2.34.2-py3-none-any.whl.metadata (4.8 kB)",
                                "Collecting shellingham>=1.3.0 (from typer==0.26.1->-r requirements.txt (line 11))",
                                "  Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)",
                                "Collecting rich>=13.8.0 (from typer==0.26.1->-r requirements.txt (line 11))",
                                "  Downloading rich-15.0.0-py3-none-any.whl.metadata (18 kB)",
                                "Collecting annotated-doc>=0.0.2 (from typer==0.26.1->-r requirements.txt (line 11))",
                                "  Downloading annotated_doc-0.0.4-py3-none-any.whl.metadata (6.6 kB)",
                                "Collecting autopage>=0.4.0 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading autopage-0.6.0-py3-none-any.whl.metadata (8.1 kB)",
                                "Collecting cmd2>=3.0.0 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading cmd2-3.5.1-py3-none-any.whl.metadata (16 kB)",
                                "Collecting PrettyTable>=0.7.2 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading prettytable-3.17.0-py3-none-any.whl.metadata (34 kB)",
                                "Collecting stevedore>=5.6.0 (from cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading stevedore-5.8.0-py3-none-any.whl.metadata (2.3 kB)",
                                "Collecting pyperclip>=1.8.2 (from cmd2>=3.0.0->cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading pyperclip-1.11.0-py3-none-any.whl.metadata (2.4 kB)",
                                "Collecting rich-argparse>=1.7.2 (from cmd2>=3.0.0->cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading rich_argparse-1.8.0-py3-none-any.whl.metadata (15 kB)",
                                "Collecting cffi>=2.0.0 (from cryptography>=2.7->openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.6 kB)",
                                "Collecting pycparser (from cffi>=2.0.0->cryptography>=2.7->openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading pycparser-3.0-py3-none-any.whl.metadata (8.2 kB)",
                                "Collecting wrapt>=2.1.0 (from debtcollector>=1.2.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading wrapt-2.2.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (7.4 kB)",
                                "Collecting jsonpointer>=1.9 (from jsonpatch!=1.20,>=1.16->openstacksdk==4.10.0->-r requirements.txt (line 6))",
                                "  Downloading jsonpointer-3.1.1-py3-none-any.whl.metadata (2.4 kB)",
                                "INFO: pip is looking at multiple versions of osc-lib to determine which version is compatible with other requirements. This could take a while.",
                                "Collecting osc-lib>=1.12.0 (from python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading osc_lib-4.5.0-py3-none-any.whl.metadata (3.8 kB)",
                                "Collecting oslo.config>=5.2.0 (from oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading oslo_config-10.4.0-py3-none-any.whl.metadata (2.3 kB)",
                                "Collecting oslo.context>=2.21.0 (from oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading oslo_context-6.4.0-py3-none-any.whl.metadata (2.3 kB)",
                                "Collecting python-dateutil>=2.7.0 (from oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)",
                                "Collecting rfc3986>=1.2.0 (from oslo.config>=5.2.0->oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading rfc3986-2.0.0-py2.py3-none-any.whl.metadata (6.6 kB)",
                                "Collecting msgpack>=0.5.2 (from oslo.serialization!=2.19.1,>=2.18.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading msgpack-1.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (8.1 kB)",
                                "Collecting pyparsing>=2.1.0 (from oslo.utils>=3.33.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading pyparsing-3.3.2-py3-none-any.whl.metadata (5.8 kB)",
                                "Collecting packaging>=20.4 (from oslo.utils>=3.33.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Using cached packaging-26.2-py3-none-any.whl.metadata (3.5 kB)",
                                "Requirement already satisfied: setuptools in ./.tox/test/lib/python3.11/site-packages (from pbr!=2.1.0,>=2.0.0->openstacksdk==4.10.0->-r requirements.txt (line 6)) (82.0.1)",
                                "Collecting wcwidth (from PrettyTable>=0.7.2->cliff>=3.4.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading wcwidth-0.7.0-py3-none-any.whl.metadata (36 kB)",
                                "Collecting six>=1.5 (from python-dateutil>=2.7.0->oslo.log>=3.36.0->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)",
                                "Collecting charset_normalizer<4,>=2 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading charset_normalizer-3.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)",
                                "Collecting idna<4,>=2.5 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading idna-3.16-py3-none-any.whl.metadata (6.4 kB)",
                                "Collecting urllib3<3,>=1.26 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading urllib3-2.7.0-py3-none-any.whl.metadata (6.9 kB)",
                                "Collecting certifi>=2023.5.7 (from requests>=2.14.2->python-neutronclient==11.8.0->-r requirements.txt (line 9))",
                                "  Downloading certifi-2026.5.20-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting markdown-it-py>=2.2.0 (from rich>=13.8.0->typer==0.26.1->-r requirements.txt (line 11))",
                                "  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>=13.8.0->typer==0.26.1->-r requirements.txt (line 11))",
                                "  Downloading pygments-2.20.0-py3-none-any.whl.metadata (2.5 kB)",
                                "Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=13.8.0->typer==0.26.1->-r requirements.txt (line 11))",
                                "  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.3 MB/s  0:00:00",
                                "Downloading click-8.3.2-py3-none-any.whl (108 kB)",
                                "Downloading deepmerge-2.0-py3-none-any.whl (13 kB)",
                                "Downloading dynaconf-3.2.13-py2.py3-none-any.whl (238 kB)",
                                "Downloading loguru-0.7.3-py3-none-any.whl (61 kB)",
                                "Downloading openstacksdk-4.10.0-py3-none-any.whl (1.9 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.9/1.9 MB 13.8 MB/s  0:00:00",
                                "Downloading os_client_config-2.3.0-py3-none-any.whl (30 kB)",
                                "Downloading python_neutronclient-11.8.0-py3-none-any.whl (296 kB)",
                                "Downloading tabulate-0.10.0-py3-none-any.whl (39 kB)",
                                "Downloading typer-0.26.1-py3-none-any.whl (123 kB)",
                                "Downloading annotated_doc-0.0.4-py3-none-any.whl (5.3 kB)",
                                "Downloading cliff-4.14.0-py3-none-any.whl (86 kB)",
                                "Downloading autopage-0.6.0-py3-none-any.whl (30 kB)",
                                "Downloading cmd2-3.5.1-py3-none-any.whl (147 kB)",
                                "Downloading cryptography-48.0.0-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 24.0 MB/s  0:00:00",
                                "Downloading cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (215 kB)",
                                "Downloading debtcollector-3.1.0-py3-none-any.whl (24 kB)",
                                "Downloading decorator-5.3.1-py3-none-any.whl (10 kB)",
                                "Downloading dogpile_cache-1.5.0-py3-none-any.whl (64 kB)",
                                "Downloading iso8601-2.1.0-py3-none-any.whl (7.5 kB)",
                                "Downloading jmespath-1.1.0-py3-none-any.whl (20 kB)",
                                "Downloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB)",
                                "Downloading jsonpointer-3.1.1-py3-none-any.whl (7.7 kB)",
                                "Downloading keystoneauth1-5.14.0-py3-none-any.whl (343 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 23.3 MB/s  0:00:00",
                                "Downloading os_service_types-1.8.2-py3-none-any.whl (24 kB)",
                                "Downloading osc_lib-4.5.0-py3-none-any.whl (96 kB)",
                                "Downloading oslo_i18n-6.8.0-py3-none-any.whl (47 kB)",
                                "Downloading oslo_log-8.2.0-py3-none-any.whl (77 kB)",
                                "Downloading oslo_config-10.4.0-py3-none-any.whl (137 kB)",
                                "Downloading oslo_context-6.4.0-py3-none-any.whl (20 kB)",
                                "Downloading oslo_serialization-5.10.0-py3-none-any.whl (27 kB)",
                                "Downloading msgpack-1.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (426 kB)",
                                "Downloading oslo_utils-10.0.1-py3-none-any.whl (136 kB)",
                                "Using cached packaging-26.2-py3-none-any.whl (100 kB)",
                                "Downloading pbr-7.0.3-py2.py3-none-any.whl (131 kB)",
                                "Downloading platformdirs-4.9.6-py3-none-any.whl (21 kB)",
                                "Downloading prettytable-3.17.0-py3-none-any.whl (34 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 pyasn1-0.6.3-py3-none-any.whl (83 kB)",
                                "Downloading pyasn1_modules-0.4.2-py3-none-any.whl (181 kB)",
                                "Downloading pyparsing-3.3.2-py3-none-any.whl (122 kB)",
                                "Downloading pyperclip-1.11.0-py3-none-any.whl (11 kB)",
                                "Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)",
                                "Downloading python_keystoneclient-5.8.0-py3-none-any.whl (397 kB)",
                                "Downloading requests-2.34.2-py3-none-any.whl (73 kB)",
                                "Downloading charset_normalizer-3.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (214 kB)",
                                "Downloading idna-3.16-py3-none-any.whl (74 kB)",
                                "Downloading urllib3-2.7.0-py3-none-any.whl (131 kB)",
                                "Downloading certifi-2026.5.20-py3-none-any.whl (134 kB)",
                                "Downloading requestsexceptions-1.4.0-py2.py3-none-any.whl (3.8 kB)",
                                "Downloading rfc3986-2.0.0-py2.py3-none-any.whl (31 kB)",
                                "Downloading rich-15.0.0-py3-none-any.whl (310 kB)",
                                "Downloading pygments-2.20.0-py3-none-any.whl (1.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 1.2/1.2 MB 16.3 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 rich_argparse-1.8.0-py3-none-any.whl (25 kB)",
                                "Downloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)",
                                "Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)",
                                "Downloading stevedore-5.8.0-py3-none-any.whl (54 kB)",
                                "Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)",
                                "Downloading wrapt-2.2.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (159 kB)",
                                "Downloading pycparser-3.0-py3-none-any.whl (48 kB)",
                                "Downloading wcwidth-0.7.0-py3-none-any.whl (110 kB)",
                                "Building wheels for collected packages: python-ldap",
                                "  Building wheel for python-ldap (pyproject.toml): started",
                                "  Building wheel for python-ldap (pyproject.toml): finished with status 'done'",
                                "  Created wheel for python-ldap: filename=python_ldap-3.4.5-cp311-cp311-linux_x86_64.whl size=374042 sha256=ce16cf7181566721ebf703ede381f701da0ec98a6a700c078dfb9a45092b8de4",
                                "  Stored in directory: /home/zuul/.cache/pip/wheels/a4/b4/c9/fb4c51b9c74b8ece688137b6a8f3a0b1d92aa2618e9cf3f66c",
                                "Successfully built python-ldap",
                                "Installing collected packages: requestsexceptions, pyperclip, wrapt, wcwidth, urllib3, typing-extensions, tabulate, stevedore, six, shellingham, rfc3986, PyYAML, pyparsing, pygments, pycparser, pyasn1, psutil, platformdirs, pbr, packaging, netaddr, msgpack, mdurl, loguru, jsonpointer, jmespath, iso8601, idna, dynaconf, deepmerge, decorator, click, charset_normalizer, certifi, autopage, annotated-doc, requests, python-dateutil, pyasn1_modules, PrettyTable, oslo.i18n, oslo.context, os-service-types, markdown-it-py, jsonpatch, dogpile.cache, debtcollector, cffi, rich, python-ldap, oslo.utils, oslo.config, keystoneauth1, cryptography, typer, rich-argparse, oslo.serialization, openstacksdk, python-keystoneclient, oslo.log, os-client-config, cmd2, cliff, osc-lib, python-neutronclient",
                                "",
                                "Successfully installed PrettyTable-3.17.0 PyYAML-6.0.3 annotated-doc-0.0.4 autopage-0.6.0 certifi-2026.5.20 cffi-2.0.0 charset_normalizer-3.4.7 click-8.3.2 cliff-4.14.0 cmd2-3.5.1 cryptography-48.0.0 debtcollector-3.1.0 decorator-5.3.1 deepmerge-2.0 dogpile.cache-1.5.0 dynaconf-3.2.13 idna-3.16 iso8601-2.1.0 jmespath-1.1.0 jsonpatch-1.33 jsonpointer-3.1.1 keystoneauth1-5.14.0 loguru-0.7.3 markdown-it-py-4.2.0 mdurl-0.1.2 msgpack-1.1.2 netaddr-1.3.0 openstacksdk-4.10.0 os-client-config-2.3.0 os-service-types-1.8.2 osc-lib-4.5.0 oslo.config-10.4.0 oslo.context-6.4.0 oslo.i18n-6.8.0 oslo.log-8.2.0 oslo.serialization-5.10.0 oslo.utils-10.0.1 packaging-26.2 pbr-7.0.3 platformdirs-4.9.6 psutil-7.2.2 pyasn1-0.6.3 pyasn1_modules-0.4.2 pycparser-3.0 pygments-2.20.0 pyparsing-3.3.2 pyperclip-1.11.0 python-dateutil-2.9.0.post0 python-keystoneclient-5.8.0 python-ldap-3.4.5 python-neutronclient-11.8.0 requests-2.34.2 requestsexceptions-1.4.0 rfc3986-2.0.0 rich-15.0.0 rich-argparse-1.8.0 shellingham-1.5.4 six-1.17.0 stevedore-5.8.0 tabulate-0.10.0 typer-0.26.1 typing-extensions-4.15.0 urllib3-2.7.0 wcwidth-0.7.0 wrapt-2.2.1",
                                "test: 23290 I exit 0 (22.19 seconds) /home/zuul/src/github.com/osism/openstack-project-manager> python -I -m pip install -r requirements.txt pid=1914 [tox/execute/api.py:311]",
                                "  [tox] unused config key(s): basepython",
                                "  test: OK (23.05 seconds)",
                                "  congratulations :) (23.08 seconds)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-36a0-36ec-000000000053-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:15.188307Z",
                            "start": "2026-05-26T20:45:51.153399Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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.k8ke4x5h",
                            "size": 0,
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:15.655254Z",
                            "start": "2026-05-26T20:46:15.206462Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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.309294",
                            "end": "2026-05-26 20:46:16.263290",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox --version --quiet",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/openstack-project-manager",
                                    "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-36a0-36ec-000000000055-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:46:15.953996",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "4.54.0 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py",
                            "stdout_lines": [
                                "4.54.0 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-36a0-36ec-000000000055-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:16.697193Z",
                            "start": "2026-05-26T20:46:15.685770Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000055",
                        "name": "Detect tox version"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "/home/zuul/.local/tox/bin/tox   config   -etest  > /tmp/ansible.k8ke4x5h",
                            "delta": "0:00:00.371962",
                            "end": "2026-05-26 20:46:17.395022",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox   config   -etest  > /tmp/ansible.k8ke4x5h",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/openstack-project-manager",
                                    "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-36a0-36ec-000000000056-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:46:17.023060",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "",
                            "stdout_lines": [],
                            "zuul_log_id": "0242ac1f-6606-36a0-36ec-000000000056-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:17.751305Z",
                            "start": "2026-05-26T20:46:16.740946Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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/openstack-project-manager",
                                    "projects": [],
                                    "tox_constraints_file": null,
                                    "tox_package_name": null,
                                    "tox_show_config": "/tmp/ansible.k8ke4x5h"
                                }
                            },
                            "msg": "No setup.cfg, no action needed"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:18.254958Z",
                            "start": "2026-05-26T20:46:17.758820Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000057",
                        "name": "Install any sibling python packages"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/ansible.k8ke4x5h",
                                    "state": "absent"
                                },
                                "before": {
                                    "path": "/tmp/ansible.k8ke4x5h",
                                    "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.k8ke4x5h",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "absent",
                                    "unsafe_writes": false
                                }
                            },
                            "path": "/tmp/ansible.k8ke4x5h",
                            "state": "absent"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:18.692034Z",
                            "start": "2026-05-26T20:46:18.306235Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000058",
                        "name": "Remove tempfile"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "debug",
                            "changed": false,
                            "msg": "/home/zuul/.local/tox/bin/tox   -etest  -vv --skip-missing-interpreters=false"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:18.751644Z",
                            "start": "2026-05-26T20:46:18.697508Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000012",
                        "name": "Emit tox command"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "-etest",
                                "-vv",
                                "--skip-missing-interpreters=false"
                            ],
                            "delta": "0:00:03.311913",
                            "end": "2026-05-26 20:46:22.365620",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/home/zuul/.local/tox/bin/tox   -etest  -vv --skip-missing-interpreters=false",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/osism/openstack-project-manager",
                                    "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-36a0-36ec-000000000014-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:46:19.053707",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "ROOT: 203 D setup logging to DEBUG on pid 2252 [tox/report.py:229]\ntest: 233 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]\ntest: 236 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]\ntest: 237 D filesystem is case-sensitive [python_discovery/_compat.py:18]\ntest: 241 D got python info of /usr/bin/python3.11 from /home/zuul/.cache/virtualenv/py_info/4/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:139]\ntest: 242 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]\ntest: 242 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]\ntest: 243 D symlink on filesystem does work [virtualenv/info.py:51]\ntest: 244 D filesystem is case-sensitive [virtualenv/info.py:28]\ntest: 278 W commands[0]> python -m unittest discover ./test [tox/tox_env/api.py:485]\n2026-05-26 20:46:20.258 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.260 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.270 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.272 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.281 | INFO     | Assigned domain admin group to project: default-mskm-0850\n2026-05-26 20:46:20.283 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.293 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.295 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.303 | INFO     | Assigned domain admin group to project: otherdomain-othername\n2026-05-26 20:46:20.305 | INFO     | Added otherdomain-admin to domain admin group\n2026-05-26 20:46:20.315 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.317 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.326 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.328 | INFO     | Application credential created for user default-sandbox\n2026-05-26 20:46:20.406 | INFO     | Assigned domain admin group to project: mydomain-myproject\n2026-05-26 20:46:20.408 | INFO     | Application credential created for user mydomain-myproject\n2026-05-26 20:46:20.428 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.430 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.438 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.441 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.486 | INFO     | Created domain admin group: testdomain-admin\n2026-05-26 20:46:20.486 | ERROR    | Admin domain default not found\n2026-05-26 20:46:20.503 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.505 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.515 | INFO     | Created domain admin group: default-admin\n2026-05-26 20:46:20.516 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.518 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.526 | INFO     | Created domain admin group: default-admin\n2026-05-26 20:46:20.536 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.539 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.547 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.549 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.559 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.568 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.585 | INFO     | Assigned domain admin group to project: default-sandbox\n2026-05-26 20:46:20.588 | INFO     | Added default-admin to domain admin group\n2026-05-26 20:46:20.596 | INFO     | Assigned domain admin group to project: sandbox\n2026-05-26 20:46:20.599 | INFO     | Added default-admin to domain admin group\n............................................................--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=677595), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 341, 'message': 'admin - skip network bandwith limit policy check', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 229708, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=684783), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 236896, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=685839), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 373, 'message': 'test - removing bandwidth limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 237952, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=692140), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 244253, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=698305), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 250418, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=699238), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 379, 'message': 'test - creating new bandwidth limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 251351, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=706728), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 258841, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n..--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=717940), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'update_bandwidth_policy_rule', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 304, 'message': 'test - removing egress bandwidth limit rule', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 270053, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=725224), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'update_bandwidth_policy_rule', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 311, 'message': 'test - creating new egress bandwidth limit rule', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 277337, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=799818), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'update_bandwidth_policy_rule', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 322, 'message': 'test - updating egress bandwidth limit rule', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 351931, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=807143), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 636, 'message': \"<MagicMock name='mock.name' id='140294316010064'> - add flavor flavor_name\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 359256, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=814983), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 628, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 367096, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=817143), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 636, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - add flavor flavor_name\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 369256, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=818257), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='ERROR', no=40, icon='\u274c'), 'line': 655, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - flavor flavor_name not found\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 370370, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=819885), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 465, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 371998, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=827250), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 669, 'message': \"<MagicMock name='mock.name' id='140294318699664'> - managing private flavors for domain CoMpAnY\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 379363, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=828040), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 688, 'message': \"<MagicMock name='mock.name' id='140294318699664'> - Adding flavor COMPANY-private-flavor\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 380153, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=833913), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 669, 'message': \"<MagicMock name='connect().get_project().name' id='140294311476880'> - managing private flavors for domain CoMpAnY\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 386026, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=841271), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'service - quotaclass = service', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 393384, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=843631), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'service - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 395744, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=844750), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': 'service - network[network] = 5 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 396863, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=846326), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': 'service - network[router] = 6 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 398439, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=848507), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'service - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 400620, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=850300), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'service - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 402413, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=852522), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[cores] = 1 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311632400'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 404635, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=854104), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[injected_file_content_bytes] = 10240 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311632400'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 406217, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=855255), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[instances] = 255 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311632400'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 407368, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=856256), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'service - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 408369, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=858413), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backup_gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294314553040'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 410526, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=860263), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backups] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294314553040'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 412376, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=861189), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294314553040'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 413302, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=866753), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'admin - quotaclass = admin', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 418866, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=869749), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'admin - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 421862, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=873391), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"admin - network[floatingip] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294317599952'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 425504, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=875246), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"admin - network[network] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294317599952'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 427359, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=876403), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"admin - network[router] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294317599952'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 428516, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=878955), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'admin - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 431068, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=880982), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'admin - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 433095, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=881963), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': 'admin - compute[cores] = 4 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 434076, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=883393), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': 'admin - compute[injected_file_content_bytes] = 10240 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 435506, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=884349), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': 'admin - compute[instances] = 1020 != 4', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 436462, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=885024), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'admin - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 437137, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=887314), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"admin - volume[backup_gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294311546576'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 439427, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=888849), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"admin - volume[backups] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294311546576'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 440962, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=890121), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"admin - volume[gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294311546576'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 442234, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=895562), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'other - quotaclass = other', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 447675, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=898057), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'other - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 450170, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=900501), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"other - network[floatingip] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294311380816'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 452614, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=902136), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"other - network[network] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294311380816'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 454249, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=903235), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"other - network[router] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294311380816'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 455348, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=905685), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'other - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 457798, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=907517), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'other - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 459630, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=910651), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"other - compute[cores] = 1 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311405200'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 462764, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=912419), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"other - compute[injected_file_content_bytes] = 10240 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311405200'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 464532, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=913396), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"other - compute[instances] = 255 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311405200'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 465509, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=914227), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'other - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 466340, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=915170), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': 'other - volume[backup_gigabytes] = 3 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 467283, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=916823), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': 'other - volume[backups] = 3 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 468936, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=917770), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': 'other - volume[gigabytes] = 3 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 469883, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=924263), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 473, 'message': \"<MagicMock name='mock.name' id='140294313637520'> - add volume type item1\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 476376, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=931609), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 465, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 483722, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=933546), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 473, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - add volume type item1\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 485659, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=934615), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 482, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - volume type item1 not unique, please use volume type ID\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 486728, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=936109), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 465, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 488222, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=937903), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 473, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - add volume type item1\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 490016, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=939048), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 488, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - volume type item1 not found\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 491161, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=948710), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_volumetypes', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 511, 'message': \"<MagicMock name='mock.name' id='140294314621392'> - managing private volume types for domain CoMpAnY\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 500823, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=949909), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_volumetypes', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 536, 'message': \"<MagicMock name='mock.name' id='140294314621392'> - Adding volume type COMPANY-private-volume-type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 502022, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n....--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=969249), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1025, 'message': 'project_name - create network (network_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 521362, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=970359), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1039, 'message': 'project_name - create subnet (subnet_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 522472, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n..--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=983706), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_with_router', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1071, 'message': 'project_name - create router (router_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 535819, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=984820), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_with_router', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1088, 'message': 'project_name - attach subnet (subnet_name) to router (router_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 536933, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=1, microseconds=991974), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_with_router', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1088, 'message': 'project_name - attach subnet (subnet_name) to router (router_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 544087, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n..--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=6148), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 973, 'message': 'project_name - create service network (network_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 558261, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=7636), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 990, 'message': 'project_name - create service subnet (subnet_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 559749, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=14543), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 990, 'message': 'project_name - create service subnet (subnet_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 566656, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n..--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=27370), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 715, 'message': 'project_name - check public network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 579483, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=28817), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 744, 'message': 'project_name - check service network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 580930, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=34926), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 715, 'message': 'project_name - check public network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 587039, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=35803), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 725, 'message': \"project_name - it's a service project, network resources are not created\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 587916, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=36685), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 744, 'message': 'project_name - check service network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 588798, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=45892), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'cache_images', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1278, 'message': \"<MagicMock name='mock.name' id='140294309089232'> - remove cache volume cache-7777 for which there is no image anymore\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 598005, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=47799), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'cache_images', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1288, 'message': \"<MagicMock name='mock.name' id='140294309089232'> - prepare image cache for 'CentOS' (9999)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 599912, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=55177), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'share_image_with_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1210, 'message': \"<MagicMock name='connect().get_project().name' id='140294309505040'> - add shared image 'Ubuntu'\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 607290, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n..--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=143166), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294311975696'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 695279, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=144833), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294311975696'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 696946, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=152611), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294318445584'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 704724, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=153677), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294318445584'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 705790, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=155297), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 610, 'message': \"<MagicMock name='mock.name' id='140294318445584'> - Setting default volume type 1000 (test_1000)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 707410, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=164183), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294324474128'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 716296, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=165098), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294324474128'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 717211, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=173356), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294313693840'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 725469, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=174497), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294313693840'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 726610, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=176446), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 610, 'message': \"<MagicMock name='mock.name' id='140294313693840'> - Setting default volume type 1123 (test_1123)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 728559, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=185186), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294315716240'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 737299, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=186455), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294315716240'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 738568, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=187914), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='ERROR', no=40, icon='\u274c'), 'line': 578, 'message': \"<MagicMock name='mock.name' id='140294315716240'> - default volume type 2000 not found\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 740027, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=195575), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294323069392'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 747688, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=197487), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294323069392'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 749600, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=199466), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 603, 'message': \"<MagicMock name='mock.name' id='140294323069392'> - Unsetting default volume type 1123\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 751579, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=213019), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294309385424'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 765132, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=214133), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294309385424'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 766246, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=215855), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 603, 'message': \"<MagicMock name='mock.name' id='140294309385424'> - Unsetting default volume type 1123\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 767968, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n..--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=229781), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_external_network_rbacs', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 408, 'message': \"<MagicMock name='mock.name' id='140294311799312'> - quotaclass not set --> use default of {'compute': {'cores': 1, 'injected_file_content_bytes': 10240, 'instances': 255}, 'network': {'floatingip': 1, 'network': 1, 'router': 1}, 'volume': {'backup_gigabytes': 1, 'backups': 1, 'gigabytes': 1}}\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 781894, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=236229), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 875, 'message': \"<MagicMock name='mock.name' id='140294311548560'> - check if external rbac policy must be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 788342, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=238694), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 891, 'message': \"<MagicMock name='mock.name' id='140294311548560'> - external rbac policy has to be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 790807, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=239417), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 896, 'message': \"<MagicMock name='mock.name' id='140294311548560'> - create rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 791530, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=245108), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 790, 'message': \"<MagicMock name='mock.name' id='140294311210896'> - check if service rbac policy must be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 797221, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=246648), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 805, 'message': \"<MagicMock name='mock.name' id='140294311210896'> - service rbac policy has to be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 798761, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=247296), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 810, 'message': \"<MagicMock name='mock.name' id='140294311210896'> - create service rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 799409, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=253609), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 921, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - check if external rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 805722, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=255424), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 921, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - check if external rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 807537, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=256049), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 937, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - external rbac policy has to be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 808162, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=256556), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 942, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - delete external rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 808669, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=261629), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 835, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - check if service rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 813742, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=263460), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 835, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - check if service rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 815573, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=264053), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 851, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - service rbac policy has to be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 816166, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=264503), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 856, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - delete service rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 816616, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=270169), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'assign_admin_user', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1153, 'message': 'domainname-username - assign admin user domainname-admin', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 822282, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=277617), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_endpoints', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1194, 'message': 'domainname-username - add endpoint A (internal)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 829730, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=283650), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_homeproject_permissions', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1119, 'message': 'domainname-username - ensure home project permissions for user = username, user_id = 9012', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 835763, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=289573), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_homeproject_permissions', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1119, 'message': 'domainname-username-cache1 - ensure home project permissions for user = username, user_id = 9012', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 841686, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=296358), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'handle_unmanaged_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1389, 'message': 'project service (1234) in the default domain is not managed', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 848471, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=301731), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'handle_unmanaged_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1389, 'message': 'project not-service (1234) in the default domain is not managed', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 853844, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=307066), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'service - quotaclass = service', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 859179, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=307977), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'service - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 860090, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=309812), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"service - network[floatingip] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294315795216'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 861925, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=310952), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"service - network[network] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294315795216'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 863065, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=311580), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"service - network[router] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294315795216'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 863693, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=313329), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'service - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 865442, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=315513), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'service - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 867626, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=317342), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[cores] = 1 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294317331152'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 869455, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=318454), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[injected_file_content_bytes] = 10240 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294317331152'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 870567, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=319098), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[instances] = 255 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294317331152'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 871211, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=319547), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'service - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 871660, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=321290), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backup_gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294315590608'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 873403, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=322360), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backups] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294315590608'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 874473, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=323152), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294315590608'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 875265, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=323619), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'handle_unmanaged_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1389, 'message': 'project service (1234) in the default domain is not managed', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 875732, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=330497), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1316, 'message': 'project_name - project_id = 1234, domain_id = 5678', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 882610, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=340188), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1316, 'message': 'project_name - project_id = 1234, domain_id = 5678', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 892301, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n.--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=347896), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1316, 'message': 'project_name - project_id = 1234, domain_id = 5678', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 900009, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n--- Logging error in Loguru Handler #9 ---\nRecord was: {'elapsed': datetime.timedelta(seconds=2, microseconds=348417), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1321, 'message': 'project_name - not managed --> skipping', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 900530, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}\nTraceback (most recent call last):\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit\n    self._sink.write(str_record)\n  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write\n    self._stream.write(message)\nValueError: I/O operation on closed file.\n--- End of logging error ---\n...........\n----------------------------------------------------------------------\nRan 128 tests in 2.017s\n\nOK\ntest: 3206 I exit 0 (2.92 seconds) /home/zuul/src/github.com/osism/openstack-project-manager> python -m unittest discover ./test pid=2259 [tox/execute/api.py:311]\n  [tox] unused config key(s): basepython\n  test: OK (2.98=setup[0.05]+cmd[2.92] seconds)\n  congratulations :) (3.01 seconds)",
                            "stdout_lines": [
                                "ROOT: 203 D setup logging to DEBUG on pid 2252 [tox/report.py:229]",
                                "test: 233 D created app data folder /home/zuul/.cache/virtualenv [virtualenv/app_data/__init__.py:65]",
                                "test: 236 I find interpreter for spec PythonSpec(path=/home/zuul/.local/tox/bin/python3) [python_discovery/_discovery.py:131]",
                                "test: 237 D filesystem is case-sensitive [python_discovery/_compat.py:18]",
                                "test: 241 D got python info of /usr/bin/python3.11 from /home/zuul/.cache/virtualenv/py_info/4/ca3ed784184f1b3bb7c3539bfb45e71710cd27667424f92c2d5bb4df9c107c23.json [virtualenv/app_data/via_disk_folder.py:139]",
                                "test: 242 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:140]",
                                "test: 242 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, Apr  8 2026, 01:58:00) [GCC 12.2.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:144]",
                                "test: 243 D symlink on filesystem does work [virtualenv/info.py:51]",
                                "test: 244 D filesystem is case-sensitive [virtualenv/info.py:28]",
                                "test: 278 W commands[0]> python -m unittest discover ./test [tox/tox_env/api.py:485]",
                                "2026-05-26 20:46:20.258 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.260 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.270 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.272 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.281 | INFO     | Assigned domain admin group to project: default-mskm-0850",
                                "2026-05-26 20:46:20.283 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.293 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.295 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.303 | INFO     | Assigned domain admin group to project: otherdomain-othername",
                                "2026-05-26 20:46:20.305 | INFO     | Added otherdomain-admin to domain admin group",
                                "2026-05-26 20:46:20.315 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.317 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.326 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.328 | INFO     | Application credential created for user default-sandbox",
                                "2026-05-26 20:46:20.406 | INFO     | Assigned domain admin group to project: mydomain-myproject",
                                "2026-05-26 20:46:20.408 | INFO     | Application credential created for user mydomain-myproject",
                                "2026-05-26 20:46:20.428 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.430 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.438 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.441 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.486 | INFO     | Created domain admin group: testdomain-admin",
                                "2026-05-26 20:46:20.486 | ERROR    | Admin domain default not found",
                                "2026-05-26 20:46:20.503 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.505 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.515 | INFO     | Created domain admin group: default-admin",
                                "2026-05-26 20:46:20.516 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.518 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.526 | INFO     | Created domain admin group: default-admin",
                                "2026-05-26 20:46:20.536 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.539 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.547 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.549 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.559 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.568 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.585 | INFO     | Assigned domain admin group to project: default-sandbox",
                                "2026-05-26 20:46:20.588 | INFO     | Added default-admin to domain admin group",
                                "2026-05-26 20:46:20.596 | INFO     | Assigned domain admin group to project: sandbox",
                                "2026-05-26 20:46:20.599 | INFO     | Added default-admin to domain admin group",
                                "............................................................--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=677595), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 341, 'message': 'admin - skip network bandwith limit policy check', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 229708, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=684783), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 236896, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=685839), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 373, 'message': 'test - removing bandwidth limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 237952, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=692140), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 244253, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=698305), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 250418, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=699238), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 379, 'message': 'test - creating new bandwidth limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 251351, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=706728), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'test - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 258841, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "..--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=717940), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'update_bandwidth_policy_rule', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 304, 'message': 'test - removing egress bandwidth limit rule', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 270053, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=725224), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'update_bandwidth_policy_rule', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 311, 'message': 'test - creating new egress bandwidth limit rule', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 277337, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=799818), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'update_bandwidth_policy_rule', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 322, 'message': 'test - updating egress bandwidth limit rule', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 351931, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=807143), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 636, 'message': \"<MagicMock name='mock.name' id='140294316010064'> - add flavor flavor_name\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 359256, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=814983), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 628, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 367096, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=817143), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 636, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - add flavor flavor_name\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 369256, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=818257), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_flavors', 'level': (name='ERROR', no=40, icon='\u274c'), 'line': 655, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - flavor flavor_name not found\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 370370, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=819885), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 465, 'message': \"<MagicMock name='mock.name' id='140294318652240'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 371998, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=827250), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 669, 'message': \"<MagicMock name='mock.name' id='140294318699664'> - managing private flavors for domain CoMpAnY\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 379363, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=828040), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 688, 'message': \"<MagicMock name='mock.name' id='140294318699664'> - Adding flavor COMPANY-private-flavor\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 380153, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=833913), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_flavors', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 669, 'message': \"<MagicMock name='connect().get_project().name' id='140294311476880'> - managing private flavors for domain CoMpAnY\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 386026, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=841271), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'service - quotaclass = service', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 393384, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=843631), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'service - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 395744, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=844750), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': 'service - network[network] = 5 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 396863, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=846326), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': 'service - network[router] = 6 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 398439, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=848507), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'service - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 400620, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=850300), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'service - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 402413, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=852522), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[cores] = 1 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311632400'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 404635, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=854104), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[injected_file_content_bytes] = 10240 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311632400'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 406217, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=855255), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[instances] = 255 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311632400'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 407368, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=856256), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'service - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 408369, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=858413), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backup_gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294314553040'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 410526, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=860263), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backups] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294314553040'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 412376, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=861189), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294314553040'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 413302, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=866753), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'admin - quotaclass = admin', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 418866, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=869749), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'admin - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 421862, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=873391), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"admin - network[floatingip] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294317599952'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 425504, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=875246), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"admin - network[network] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294317599952'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 427359, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=876403), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"admin - network[router] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294317599952'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 428516, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=878955), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'admin - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 431068, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=880982), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'admin - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 433095, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=881963), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': 'admin - compute[cores] = 4 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 434076, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=883393), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': 'admin - compute[injected_file_content_bytes] = 10240 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 435506, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=884349), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': 'admin - compute[instances] = 1020 != 4', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 436462, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=885024), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'admin - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 437137, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=887314), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"admin - volume[backup_gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294311546576'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 439427, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=888849), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"admin - volume[backups] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294311546576'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 440962, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=890121), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"admin - volume[gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294311546576'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 442234, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=895562), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'other - quotaclass = other', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 447675, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=898057), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'other - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 450170, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=900501), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"other - network[floatingip] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294311380816'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 452614, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=902136), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"other - network[network] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294311380816'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 454249, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=903235), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"other - network[router] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294311380816'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 455348, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=905685), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'other - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 457798, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=907517), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'other - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 459630, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=910651), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"other - compute[cores] = 1 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311405200'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 462764, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=912419), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"other - compute[injected_file_content_bytes] = 10240 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311405200'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 464532, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=913396), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"other - compute[instances] = 255 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294311405200'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 465509, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=914227), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'other - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 466340, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=915170), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': 'other - volume[backup_gigabytes] = 3 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 467283, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=916823), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': 'other - volume[backups] = 3 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 468936, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=917770), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': 'other - volume[gigabytes] = 3 != 0', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 469883, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=924263), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 473, 'message': \"<MagicMock name='mock.name' id='140294313637520'> - add volume type item1\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 476376, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=931609), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 465, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 483722, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=933546), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 473, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - add volume type item1\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 485659, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=934615), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 482, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - volume type item1 not unique, please use volume type ID\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 486728, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=936109), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 465, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 488222, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=937903), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 473, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - add volume type item1\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 490016, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=939048), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_volume_types', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 488, 'message': \"<MagicMock name='mock.name' id='140294314450832'> - volume type item1 not found\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 491161, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=948710), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_volumetypes', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 511, 'message': \"<MagicMock name='mock.name' id='140294314621392'> - managing private volume types for domain CoMpAnY\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 500823, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=949909), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_private_volumetypes', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 536, 'message': \"<MagicMock name='mock.name' id='140294314621392'> - Adding volume type COMPANY-private-volume-type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 502022, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "....--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=969249), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1025, 'message': 'project_name - create network (network_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 521362, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=970359), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1039, 'message': 'project_name - create subnet (subnet_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 522472, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "..--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=983706), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_with_router', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1071, 'message': 'project_name - create router (router_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 535819, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=984820), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_with_router', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1088, 'message': 'project_name - attach subnet (subnet_name) to router (router_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 536933, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=1, microseconds=991974), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_with_router', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1088, 'message': 'project_name - attach subnet (subnet_name) to router (router_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 544087, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "..--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=6148), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 973, 'message': 'project_name - create service network (network_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 558261, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=7636), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 990, 'message': 'project_name - create service subnet (subnet_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 559749, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=14543), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 990, 'message': 'project_name - create service subnet (subnet_name)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 566656, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "..--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=27370), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 715, 'message': 'project_name - check public network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 579483, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=28817), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 744, 'message': 'project_name - check service network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 580930, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=34926), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 715, 'message': 'project_name - check public network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 587039, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=35803), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 725, 'message': \"project_name - it's a service project, network resources are not created\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 587916, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=36685), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'create_network_resources', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 744, 'message': 'project_name - check service network resources', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 588798, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=45892), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'cache_images', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1278, 'message': \"<MagicMock name='mock.name' id='140294309089232'> - remove cache volume cache-7777 for which there is no image anymore\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 598005, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=47799), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'cache_images', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1288, 'message': \"<MagicMock name='mock.name' id='140294309089232'> - prepare image cache for 'CentOS' (9999)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 599912, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=55177), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'share_image_with_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1210, 'message': \"<MagicMock name='connect().get_project().name' id='140294309505040'> - add shared image 'Ubuntu'\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 607290, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "..--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=143166), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294311975696'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 695279, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=144833), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294311975696'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 696946, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=152611), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294318445584'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 704724, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=153677), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294318445584'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 705790, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=155297), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 610, 'message': \"<MagicMock name='mock.name' id='140294318445584'> - Setting default volume type 1000 (test_1000)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 707410, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=164183), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294324474128'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 716296, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=165098), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294324474128'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 717211, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=173356), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294313693840'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 725469, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=174497), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294313693840'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 726610, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=176446), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 610, 'message': \"<MagicMock name='mock.name' id='140294313693840'> - Setting default volume type 1123 (test_1123)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 728559, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=185186), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294315716240'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 737299, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=186455), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294315716240'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 738568, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=187914), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='ERROR', no=40, icon='\u274c'), 'line': 578, 'message': \"<MagicMock name='mock.name' id='140294315716240'> - default volume type 2000 not found\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 740027, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=195575), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294323069392'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 747688, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=197487), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294323069392'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 749600, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=199466), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 603, 'message': \"<MagicMock name='mock.name' id='140294323069392'> - Unsetting default volume type 1123\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 751579, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=213019), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 546, 'message': \"<MagicMock name='mock.name' id='140294309385424'> - managing default volume type\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 765132, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=214133), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 550, 'message': \"<MagicMock name='mock.name' id='140294309385424'> - quotaclass not set --> use default\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 766246, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=215855), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_default_volume_type', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 603, 'message': \"<MagicMock name='mock.name' id='140294309385424'> - Unsetting default volume type 1123\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 767968, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "..--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=229781), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'manage_external_network_rbacs', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 408, 'message': \"<MagicMock name='mock.name' id='140294311799312'> - quotaclass not set --> use default of {'compute': {'cores': 1, 'injected_file_content_bytes': 10240, 'instances': 255}, 'network': {'floatingip': 1, 'network': 1, 'router': 1}, 'volume': {'backup_gigabytes': 1, 'backups': 1, 'gigabytes': 1}}\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 781894, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=236229), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 875, 'message': \"<MagicMock name='mock.name' id='140294311548560'> - check if external rbac policy must be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 788342, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=238694), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 891, 'message': \"<MagicMock name='mock.name' id='140294311548560'> - external rbac policy has to be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 790807, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=239417), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 896, 'message': \"<MagicMock name='mock.name' id='140294311548560'> - create rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 791530, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=245108), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 790, 'message': \"<MagicMock name='mock.name' id='140294311210896'> - check if service rbac policy must be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 797221, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=246648), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 805, 'message': \"<MagicMock name='mock.name' id='140294311210896'> - service rbac policy has to be created (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 798761, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=247296), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'add_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 810, 'message': \"<MagicMock name='mock.name' id='140294311210896'> - create service rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 799409, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=253609), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 921, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - check if external rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 805722, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=255424), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 921, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - check if external rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 807537, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=256049), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 937, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - external rbac policy has to be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 808162, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=256556), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_external_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 942, 'message': \"<MagicMock name='mock.name' id='140294313057168'> - delete external rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 808669, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=261629), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 835, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - check if service rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 813742, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=263460), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 835, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - check if service rbac policy must be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 815573, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=264053), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 851, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - service rbac policy has to be deleted (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 816166, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=264503), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'del_service_network', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 856, 'message': \"<MagicMock name='mock.name' id='140294313446864'> - delete service rbac policy (network_name)\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 816616, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=270169), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'assign_admin_user', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1153, 'message': 'domainname-username - assign admin user domainname-admin', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 822282, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=277617), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_endpoints', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1194, 'message': 'domainname-username - add endpoint A (internal)', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 829730, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=283650), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_homeproject_permissions', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1119, 'message': 'domainname-username - ensure home project permissions for user = username, user_id = 9012', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 835763, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=289573), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_homeproject_permissions', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1119, 'message': 'domainname-username-cache1 - ensure home project permissions for user = username, user_id = 9012', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 841686, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=296358), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'handle_unmanaged_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1389, 'message': 'project service (1234) in the default domain is not managed', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 848471, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=301731), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'handle_unmanaged_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1389, 'message': 'project not-service (1234) in the default domain is not managed', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 853844, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=307066), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 160, 'message': 'service - quotaclass = service', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 859179, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=307977), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 210, 'message': 'service - check network quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 860090, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=309812), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"service - network[floatingip] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294315795216'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 861925, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=310952), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"service - network[network] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294315795216'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 863065, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=311580), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 224, 'message': \"service - network[router] = 1 != <MagicMock name='connect().get_network_quotas().__getitem__()' id='140294315795216'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 863693, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=313329), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_bandwidth_limit', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 344, 'message': 'service - check network bandwith limit policy', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 865442, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=315513), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 234, 'message': 'service - check compute quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 867626, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=317342), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[cores] = 1 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294317331152'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 869455, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=318454), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[injected_file_content_bytes] = 10240 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294317331152'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 870567, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=319098), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 255, 'message': \"service - compute[instances] = 255 != <MagicMock name='connect().get_compute_quotas().__getitem__()' id='140294317331152'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 871211, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=319547), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 263, 'message': 'service - check volume quota', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 871660, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=321290), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backup_gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294315590608'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 873403, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=322360), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[backups] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294315590608'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 874473, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=323152), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'check_quota', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 280, 'message': \"service - volume[gigabytes] = 1 != <MagicMock name='connect().get_volume_quotas().__getitem__()' id='140294315590608'>\", 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 875265, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=323619), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'handle_unmanaged_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1389, 'message': 'project service (1234) in the default domain is not managed', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 875732, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=330497), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1316, 'message': 'project_name - project_id = 1234, domain_id = 5678', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 882610, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=340188), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1316, 'message': 'project_name - project_id = 1234, domain_id = 5678', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 892301, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                ".--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=347896), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='INFO', no=20, icon='\u2139\ufe0f'), 'line': 1316, 'message': 'project_name - project_id = 1234, domain_id = 5678', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 900009, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "--- Logging error in Loguru Handler #9 ---",
                                "Record was: {'elapsed': datetime.timedelta(seconds=2, microseconds=348417), 'exception': None, 'extra': {}, 'file': (name='manage.py', path='/home/zuul/src/github.com/osism/openstack-project-manager/openstack_project_manager/manage.py'), 'function': 'process_project', 'level': (name='WARNING', no=30, icon='\u26a0\ufe0f'), 'line': 1321, 'message': 'project_name - not managed --> skipping', 'module': 'manage', 'name': 'openstack_project_manager.manage', 'process': (id=2259, name='MainProcess'), 'thread': (id=140294376735424, name='MainThread'), 'time': datetime(2026, 5, 26, 20, 46, 21, 900530, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}",
                                "Traceback (most recent call last):",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_handler.py\", line 206, in emit",
                                "    self._sink.write(str_record)",
                                "  File \"/home/zuul/src/github.com/osism/openstack-project-manager/.tox/test/lib/python3.11/site-packages/loguru/_simple_sinks.py\", line 16, in write",
                                "    self._stream.write(message)",
                                "ValueError: I/O operation on closed file.",
                                "--- End of logging error ---",
                                "...........",
                                "----------------------------------------------------------------------",
                                "Ran 128 tests in 2.017s",
                                "",
                                "OK",
                                "test: 3206 I exit 0 (2.92 seconds) /home/zuul/src/github.com/osism/openstack-project-manager> python -m unittest discover ./test pid=2259 [tox/execute/api.py:311]",
                                "  [tox] unused config key(s): basepython",
                                "  test: OK (2.98=setup[0.05]+cmd[2.92] seconds)",
                                "  congratulations :) (3.01 seconds)"
                            ],
                            "zuul_log_id": "0242ac1f-6606-36a0-36ec-000000000014-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:22.809733Z",
                            "start": "2026-05-26T20:46:18.780023Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-000000000014",
                        "name": "Run tox"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "tox_parse_output",
                            "changed": false,
                            "failed_when_result": false,
                            "file_comments": {},
                            "invocation": {
                                "module_args": {
                                    "tox_envlist": "test",
                                    "tox_output": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
                                    "workdir": "src/github.com/osism/openstack-project-manager"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:23.238196Z",
                            "start": "2026-05-26T20:46:22.828189Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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-36a0-36ec-00000000000c",
                        "name": "tox",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/tox"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:23.289199Z",
                            "start": "2026-05-26T20:46:23.253476Z"
                        },
                        "id": "0242ac1f-6606-36a0-36ec-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-05-26T20:46:28.036723Z",
                    "start": "2026-05-26T20:46:24.207812Z"
                },
                "id": "0242ac1f-6606-528e-9567-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-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:24.281685Z",
                            "start": "2026-05-26T20:46:24.224826Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-000000000007",
                        "name": "Set tox log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/tox"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:24.329912Z",
                            "start": "2026-05-26T20:46:24.294569Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-000000000008",
                        "name": "Set tox log path for single node"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/tox",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/logs/tox",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:24.804367Z",
                            "start": "2026-05-26T20:46:24.335974Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:24.876511Z",
                            "start": "2026-05-26T20:46:24.819834Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-00000000000a",
                        "name": "Ensure zuul-output tox dir"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "envlist": [
                                    "test"
                                ]
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:24.937684Z",
                            "start": "2026-05-26T20:46:24.892700Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-00000000000b",
                        "name": "Set envlist fact"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "/home/zuul/.local/tox/bin/tox",
                                "--version"
                            ],
                            "delta": "0:00:00.313855",
                            "end": "2026-05-26 20:46:25.718238",
                            "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-528e-9567-00000000000c-1-debianbookworm",
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-26 20:46:25.404383",
                            "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.54.0 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.54.0 from /home/zuul/.local/tox/lib/python3.11/site-packages/tox/__init__.py"
                            ],
                            "zuul_log_id": "0242ac1f-6606-528e-9567-00000000000c-1-debianbookworm"
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:25.977526Z",
                            "start": "2026-05-26T20:46:24.966900Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:26.517036Z",
                            "start": "2026-05-26T20:46:26.008110Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:26.557284Z",
                            "start": "2026-05-26T20:46:26.530607Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:27.094485Z",
                            "start": "2026-05-26T20:46:26.583537Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:27.138477Z",
                            "start": "2026-05-26T20:46:27.103167Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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": "test"
                                }
                            ],
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:27.194777Z",
                            "start": "2026-05-26T20:46:27.146377Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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:feb8:ba4f]:src/github.com/osism/openstack-project-manager/.tox/test/log/' /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/tox/test",
                                    "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/2fc294d2943c412681714244132e0a50/work/logs/tox/test",
                                            "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:feb8:ba4f]:src/github.com/osism/openstack-project-manager/.tox/test/log/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": "created directory /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/tox/test\ncd+++++++++ ./\n>f+++++++++ 1-commands[0].log\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        "created directory /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/tox/test",
                                        "cd+++++++++ ./",
                                        ">f+++++++++ 1-commands[0].log"
                                    ],
                                    "zj_testenv": "test"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-528e-9567-000000000005",
                        "name": "fetch-tox-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-tox-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:28.036723Z",
                            "start": "2026-05-26T20:46:27.207544Z"
                        },
                        "id": "0242ac1f-6606-528e-9567-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-05-26T20:46:29.561181Z",
                    "start": "2026-05-26T20:46:28.978227Z"
                },
                "id": "0242ac1f-6606-e5f8-9dd2-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:feb8:ba4f closed.\r\n",
                            "stderr_lines": [
                                "Shared connection to 2a13:1a81:8000:3124:f816:3eff:feb8:ba4f closed."
                            ],
                            "stdout": "",
                            "stdout_lines": []
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.261578Z",
                            "start": "2026-05-26T20:46:28.996575Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.301031Z",
                            "start": "2026-05-26T20:46:29.276011Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.332684Z",
                            "start": "2026-05-26T20:46:29.308662Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.376640Z",
                            "start": "2026-05-26T20:46:29.342267Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.414765Z",
                            "start": "2026-05-26T20:46:29.389926Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.449489Z",
                            "start": "2026-05-26T20:46:29.424763Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.488144Z",
                            "start": "2026-05-26T20:46:29.462640Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.525729Z",
                            "start": "2026-05-26T20:46:29.500820Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-e5f8-9dd2-000000000005",
                        "name": "fetch-subunit-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/untrusted/project_0/github.com/osism/openinfra-zuul-jobs/roles/fetch-subunit-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:29.561181Z",
                            "start": "2026-05-26T20:46:29.535604Z"
                        },
                        "id": "0242ac1f-6606-e5f8-9dd2-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-05-26T20:46:34.461048Z",
                    "start": "2026-05-26T20:46:30.438492Z"
                },
                "id": "0242ac1f-6606-35a6-5b25-000000000002",
                "name": "Base post-fetch"
            },
            "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-35a6-5b25-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:30.498331Z",
                            "start": "2026-05-26T20:46:30.452893Z"
                        },
                        "id": "0242ac1f-6606-35a6-5b25-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "debian-bookworm": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-35a6-5b25-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:30.549296Z",
                            "start": "2026-05-26T20:46:30.507756Z"
                        },
                        "id": "0242ac1f-6606-35a6-5b25-000000000009",
                        "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/2fc294d2943c412681714244132e0a50/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-35a6-5b25-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:31.607239Z",
                            "start": "2026-05-26T20:46:30.555382Z"
                        },
                        "id": "0242ac1f-6606-35a6-5b25-00000000000a",
                        "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:feb8:ba4f]:/home/zuul/zuul-output/logs/' /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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:feb8:ba4f]:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n>f+++++++++ sudo-debug.txt\n>f+++++++++ sudo-strace.log\n>f+++++++++ sudo-strace.log.time\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./",
                                        ">f+++++++++ sudo-debug.txt",
                                        ">f+++++++++ sudo-strace.log",
                                        ">f+++++++++ sudo-strace.log.time"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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:feb8:ba4f]:/home/zuul/zuul-output/artifacts/' /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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:feb8:ba4f]:/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/2fc294d2943c412681714244132e0a50/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:feb8:ba4f]:/home/zuul/zuul-output/docs/' /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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:feb8:ba4f]:/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/2fc294d2943c412681714244132e0a50/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-35a6-5b25-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:33.625351Z",
                            "start": "2026-05-26T20:46:31.622029Z"
                        },
                        "id": "0242ac1f-6606-35a6-5b25-00000000000c",
                        "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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/artifacts/* /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.010332",
                                    "end": "2026-05-26 20:46:34.113571",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/artifacts/* /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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-05-26 20:46:34.103239",
                                    "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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/docs/* /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.008200",
                                    "end": "2026-05-26 20:46:34.423174",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/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/2fc294d2943c412681714244132e0a50/work/docs/* /var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/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-05-26 20:46:34.414974",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac1f-6606-35a6-5b25-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:34.461048Z",
                            "start": "2026-05-26T20:46:33.638244Z"
                        },
                        "id": "0242ac1f-6606-35a6-5b25-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        }
    ],
    "stats": {
        "debian-bookworm": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 4,
            "rescued": 0,
            "skipped": 1,
            "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-05-26T20:46:35.961661Z",
                    "start": "2026-05-26T20:46:35.363670Z"
                },
                "id": "0242ac1f-6606-1a78-9d29-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDb4KwpySBQPJduob/YMvy/ccj6MgnAcYltfMKT29TzbaNzly1oe0J/ghdT+gEx+SP/BwwHhtfnqrHx5Qn9sfao8z1UVposY1vWEwujG6UjBM7dRK6HgkpNcSRFt6H7INOoQd0iz7TSopJgS+zamjrVVk4FDbj+K3XSF1kbyQesP6045tL8jUfH5gRQqyJ/G9PzZkM4F9VXiISGBQclicbeRCJglCZT/GDGfifSBerRJ+tR/c78TqRPbgCUy/YumDmNGoqPppEVlK/reIUP2v2YqYl/MIC50kNkzMEDD7xnJ4sypkwnFfk762mG3QhEYD2azBRsUVHrpP5xd6BbA4EJuMwdgz8R/SFOnQTXSziTuJuoRgdqS9gxJRx0wtVx2vhoUESYcLS+or6OQh/IOotLCAnE4MuVD9O4lunKwphRIZ8M0Mhf4ZTgkX2J5ME6CK/Agg53gJY6tgZb6WG4krSky5PQ6TU6YRj9LEOVakLL+wrwu/WVAJMQQo0jodBx2Gk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDb4KwpySBQPJduob/YMvy/ccj6MgnAcYltfMKT29TzbaNzly1oe0J/ghdT+gEx+SP/BwwHhtfnqrHx5Qn9sfao8z1UVposY1vWEwujG6UjBM7dRK6HgkpNcSRFt6H7INOoQd0iz7TSopJgS+zamjrVVk4FDbj+K3XSF1kbyQesP6045tL8jUfH5gRQqyJ/G9PzZkM4F9VXiISGBQclicbeRCJglCZT/GDGfifSBerRJ+tR/c78TqRPbgCUy/YumDmNGoqPppEVlK/reIUP2v2YqYl/MIC50kNkzMEDD7xnJ4sypkwnFfk762mG3QhEYD2azBRsUVHrpP5xd6BbA4EJuMwdgz8R/SFOnQTXSziTuJuoRgdqS9gxJRx0wtVx2vhoUESYcLS+or6OQh/IOotLCAnE4MuVD9O4lunKwphRIZ8M0Mhf4ZTgkX2J5ME6CK/Agg53gJY6tgZb6WG4krSky5PQ6TU6YRj9LEOVakLL+wrwu/WVAJMQQo0jodBx2Gk= 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-1a78-9d29-000000000005",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/2fc294d2943c412681714244132e0a50/trusted/project_1/github.com/osism/openinfra-zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-26T20:46:35.961661Z",
                            "start": "2026-05-26T20:46:35.378334Z"
                        },
                        "id": "0242ac1f-6606-1a78-9d29-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
}
]
