{"msg":"cockroach temporary directory: /var/tmp/omicron_tmp/.tmpNPZ2oo","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:12.159387414Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"cockroach: copying from seed tarball (/var/tmp/omicron_tmp/crdb-base-build/0ba558b6703680b8ede35fabd6978a943490bd8054f72957a6e548a757ea0cf2.tar) to storage directory (/var/tmp/omicron_tmp/.tmpNPZ2oo/data)","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:12.167392904Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"cockroach command line: cockroach start-single-node --insecure --http-addr=:0 --store=path=/var/tmp/omicron_tmp/.tmpNPZ2oo/data,ballast-size=0 --listen-addr [::1]:0 --listening-url-file /var/tmp/omicron_tmp/.tmpNPZ2oo/listen-url","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:12.167457707Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"cockroach environment: BUILDOMAT_JOB_ID=01HPMN2STWTAWNNTNSRX3P7732 BUILDOMAT_TASK_ID=4 CARGO=/home/build/.rustup/toolchains/1.74.1-x86_64-unknown-linux-gnu/bin/cargo CARGO_HOME=/home/build/.cargo CARGO_INCREMENTAL=0 CARGO_MANIFEST_DIR=/work/oxidecomputer/omicron/nexus/db-queries CARGO_PKG_AUTHORS= CARGO_PKG_DESCRIPTION= CARGO_PKG_HOMEPAGE= CARGO_PKG_LICENSE=MPL-2.0 CARGO_PKG_LICENSE_FILE= CARGO_PKG_NAME=nexus-db-queries CARGO_PKG_REPOSITORY= CARGO_PKG_RUST_VERSION= CARGO_PKG_VERSION=0.1.0 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=1 CARGO_PKG_VERSION_PATCH=0 CARGO_PKG_VERSION_PRE= CI=true CRDB_SEED_TAR=/var/tmp/omicron_tmp/crdb-base-build/0ba558b6703680b8ede35fabd6978a943490bd8054f72957a6e548a757ea0cf2.tar GITHUB_BRANCH=order-next-item-subquery GITHUB_REF=refs/heads/order-next-item-subquery GITHUB_REPOSITORY=oxidecomputer/omicron GITHUB_SHA=604b19b55a25857d0a501c266b1b25941fa11b3e GOTRACEBACK=crash HOME=/home/build LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LD_LIBRARY_PATH=/work/oxidecomputer/omicron/target/debug/build/blake3-feeaa7149c3596f1/out:/work/oxidecomputer/omicron/target/debug/build/bzip2-sys-a48f149f01e13be4/out/lib:/work/oxidecomputer/omicron/target/debug/build/ring-36a1c9477f8b2f8d/out:/work/oxidecomputer/omicron/target/debug/build/ring-ba6b6ec6a6f9aa54/out:/work/oxidecomputer/omicron/target/debug/build/tofino-d74860998be2bf98/out:/work/oxidecomputer/omicron/target/debug/deps:/work/oxidecomputer/omicron/target/debug:/home/build/.rustup/toolchains/1.74.1-x86_64-unknown-linux-gnu/lib LOGNAME=build NEXTEST=1 NEXTEST_EXECUTION_MODE=process-per-test NEXTEST_LD_LIBRARY_PATH=/work/oxidecomputer/omicron/target/debug/build/blake3-feeaa7149c3596f1/out:/work/oxidecomputer/omicron/target/debug/build/bzip2-sys-a48f149f01e13be4/out/lib:/work/oxidecomputer/omicron/target/debug/build/ring-36a1c9477f8b2f8d/out:/work/oxidecomputer/omicron/target/debug/build/ring-ba6b6ec6a6f9aa54/out:/work/oxidecomputer/omicron/target/debug/build/tofino-d74860998be2bf98/out:/work/oxidecomputer/omicron/target/debug/deps:/work/oxidecomputer/omicron/target/debug:/home/build/.rustup/toolchains/1.74.1-x86_64-unknown-linux-gnu/lib NEXTEST_RUN_ID=3d3fc513-6fdb-4fb5-9570-45efa6c0d5c6 OUT_DIR=/work/oxidecomputer/omicron/target/debug/build/nexus-db-queries-fe99d87e837cdda9/out PATH=/work/oxidecomputer/omicron/out/mgd/root/opt/oxide/mgd/bin:/work/oxidecomputer/omicron/out/dendrite-stub/bin:/work/oxidecomputer/omicron/out/clickhouse:/work/oxidecomputer/omicron/out/cockroachdb/bin:/home/build/.cargo/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/ooce/bin:/opt/ooce/sbin PWD=/work/oxidecomputer/omicron RUSTC_BOOTSTRAP=1 RUSTDOCFLAGS=-D warnings RUSTFLAGS=-D warnings RUSTUP_HOME=/home/build/.rustup RUSTUP_TOOLCHAIN=1.74.1-x86_64-unknown-linux-gnu RUST_BACKTRACE=1 RUST_RECURSION_COUNT=1 SHLVL=1 SSL_CERT_DIR=/usr/lib/ssl/certs SSL_CERT_FILE=/usr/lib/ssl/certs/ca-certificates.crt TMPDIR=/var/tmp/omicron_tmp TZ=UTC USER=build __NEXTEST_ATTEMPT=1 __NEXTEST_ORIGINAL_CARGO_MANIFEST_DIR=/work/oxidecomputer/omicron/nexus/db-queries","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:12.168707814Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"cockroach pid: 22790","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:13.441590688Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"cockroach listen URL: postgresql://root@[::1]:41241/omicron?sslmode=disable","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:13.443054597Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"database connection pool","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:13.443092969Z","hostname":"ip-10-150-1-168","pid":22742,"component":"db::Pool","database_url":"postgresql://root@[::1]:41241/omicron?sslmode=disable"} {"msg":"Compatible database schema: 33.0.1","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.233588274Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.233962764Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Action"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.23462948Z","hostname":"ip-10-150-1-168","pid":22742,"class":"AnyActor"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234676612Z","hostname":"ip-10-150-1-168","pid":22742,"class":"AuthenticatedActor"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234712814Z","hostname":"ip-10-150-1-168","pid":22742,"class":"BlueprintConfig"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234748776Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Database"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234788008Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DnsConfig"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.23482317Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Fleet"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234868413Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Inventory"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234907305Z","hostname":"ip-10-150-1-168","pid":22742,"class":"IpPoolList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234940797Z","hostname":"ip-10-150-1-168","pid":22742,"class":"ConsoleSessionList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.234973288Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DeviceAuthRequestList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.23500402Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloCertificateList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.235035462Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloIdentityProviderList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.235072993Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloUserList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.235107235Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Project"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.235140237Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Disk"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.23519015Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Snapshot"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239296371Z","hostname":"ip-10-150-1-168","pid":22742,"class":"ProjectImage"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239375615Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Instance"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239410326Z","hostname":"ip-10-150-1-168","pid":22742,"class":"IpPool"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239433308Z","hostname":"ip-10-150-1-168","pid":22742,"class":"InstanceNetworkInterface"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.23947057Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Vpc"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239496561Z","hostname":"ip-10-150-1-168","pid":22742,"class":"VpcRouter"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239517782Z","hostname":"ip-10-150-1-168","pid":22742,"class":"RouterRoute"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239550714Z","hostname":"ip-10-150-1-168","pid":22742,"class":"VpcSubnet"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239588946Z","hostname":"ip-10-150-1-168","pid":22742,"class":"FloatingIp"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239615768Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Image"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.23966318Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloImage"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239706833Z","hostname":"ip-10-150-1-168","pid":22742,"class":"AddressLot"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239747385Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Blueprint"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239798378Z","hostname":"ip-10-150-1-168","pid":22742,"class":"LoopbackAddress"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239835589Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Certificate"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239858541Z","hostname":"ip-10-150-1-168","pid":22742,"class":"ConsoleSession"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239898103Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DeviceAuthRequest"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239934685Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DeviceAccessToken"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239957516Z","hostname":"ip-10-150-1-168","pid":22742,"class":"PhysicalDisk"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.239978477Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Rack"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240007759Z","hostname":"ip-10-150-1-168","pid":22742,"class":"RoleBuiltin"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.24002886Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SshKey"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240048721Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Silo"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240068632Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloUser"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240087443Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloGroup"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240108004Z","hostname":"ip-10-150-1-168","pid":22742,"class":"IdentityProvider"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240126825Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SamlIdentityProvider"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240145866Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Sled"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240176298Z","hostname":"ip-10-150-1-168","pid":22742,"class":"TufRepo"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240215Z","hostname":"ip-10-150-1-168","pid":22742,"class":"TufArtifact"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240241331Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Zpool"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240269353Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Service"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240292794Z","hostname":"ip-10-150-1-168","pid":22742,"class":"UserBuiltin"} {"msg":"full Oso configuration","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.240312805Z","hostname":"ip-10-150-1-168","pid":22742,"config":"#\n# Oso configuration for Omicron\n# This file is augmented by generated snippets.\n#\n\n#\n# ACTOR TYPES AND BASIC RULES\n#\n\n# `AnyActor` includes both authenticated and unauthenticated users.\nactor AnyActor {}\n\n# An `AuthenticatedActor` has an identity in the system. All of our operations\n# today require that an actor be authenticated.\nactor AuthenticatedActor {}\n\n# For any resource, `actor` can perform action `action` on it if they're\n# authenticated and their role(s) give them the corresponding permission on that\n# resource.\nallow(actor: AnyActor, action: Action, resource) if\n actor.authenticated and\n has_permission(actor.authn_actor.unwrap(), action.to_perm(), resource);\n\n# Define role relationships\nhas_role(actor: AuthenticatedActor, role: String, resource: Resource)\n\tif resource.has_role(actor, role);\n\n#\n# ROLES AND PERMISSIONS IN THE FLEET/SILO/PROJECT HIERARCHY\n#\n# We define the following permissions for most resources in the system:\n#\n# - \"create_child\": required to create child resources (of any type)\n#\n# - \"list_children\": required to list child resources (of all types) of a\n# resource\n#\n# - \"modify\": required to modify or delete a resource\n#\n# - \"read\": required to read a resource\n#\n# We define the following predefined roles for only a few high-level resources:\n# the Fleet (see below), Silo, Organization, and Project. The specific roles\n# are oriented around intended use-cases:\n#\n# - \"admin\": has all permissions on the resource\n#\n# - \"collaborator\": has \"read\", \"list_children\", and \"create_child\", plus\n# the \"admin\" role for child resources. The idea is that if you're an\n# Organization Collaborator, you have full control over the Projects within\n# the Organization, but you cannot modify or delete the Organization itself.\n#\n# - \"viewer\": has \"read\" and \"list_children\" on a resource\n#\n# Below the Project level, permissions are granted via roles at the Project\n# level. For example, for someone to be able to create, modify, or delete any\n# Instances, they must be granted project.collaborator, which means they can\n# create, modify, or delete _all_ resources in the Project.\n#\n# The complete set of predefined roles:\n#\n# - fleet.admin (superuser for the whole system)\n# - fleet.collaborator (can manage Silos)\n# - fleet.viewer (can read most non-siloed resources in the system)\n# - silo.admin (superuser for the silo)\n# - silo.collaborator (can create and own Organizations)\n# - silo.viewer (can read most resources within the Silo)\n# - organization.admin (complete control over an organization)\n# - organization.collaborator (can manage Projects)\n# - organization.viewer (can read most resources within the Organization)\n# - project.admin (complete control over a Project)\n# - project.collaborator (can manage all resources within the Project)\n# - project.viewer (can read most resources within the Project)\n#\n# Outside the Silo/Organization/Project hierarchy, we (currently) treat most\n# resources as nested under Fleet or else a synthetic resource (see below). We\n# do not yet support role assignments on anything other than Fleet, Silo,\n# Organization, or Project.\n#\n\n# \"Fleet\" is a global singleton representing the whole system. The name comes\n# from the idea described in RFD 24, but it's not quite right. This probably\n# should be more like \"Region\" or \"AvailabilityZone\". The precise boundaries\n# have not yet been figured out.\nresource Fleet {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\n\troles = [\n\t # Roles that can be attached by users\n\t \"admin\",\n\t \"collaborator\",\n\t \"viewer\",\n\n\t # Internal-only roles\n\t \"external-authenticator\"\n\t];\n\n\t# Roles implied by other roles on this resource\n\t\"viewer\" if \"collaborator\";\n\t\"collaborator\" if \"admin\";\n\n\t# Permissions granted directly by roles on this resource\n\t\"list_children\" if \"viewer\";\n\t\"read\" if \"viewer\";\n\t\"create_child\" if \"collaborator\";\n\t\"modify\" if \"admin\";\n}\n\n# For fleets specifically, roles can be conferred by roles on the user's Silo.\nhas_role(actor: AuthenticatedActor, role: String, _: Fleet) if\n\tsilo_role in actor.confers_fleet_role(role) and\n\thas_role(actor, silo_role, actor.silo.unwrap());\n\nresource Silo {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\troles = [ \"admin\", \"collaborator\", \"viewer\" ];\n\n\t# Roles implied by other roles on this resource\n\t\"viewer\" if \"collaborator\";\n\t\"collaborator\" if \"admin\";\n\n\t# Permissions granted directly by roles on this resource\n\t\"list_children\" if \"viewer\";\n\t\"read\" if \"viewer\";\n\n\t\"create_child\" if \"collaborator\";\n\t\"modify\" if \"admin\";\n\n\t# Permissions implied by roles on this resource's parent (Fleet). Fleet\n\t# privileges allow a user to see and potentially administer the Silo,\n\t# but they do not give anyone permission to look at anything inside the\n\t# Silo. To achieve this, we use permission rules here. (If we granted\n\t# Fleet administrators _roles_ on the Silo, then those would cascade\n\t# into the Silo as well.)\n\trelations = { parent_fleet: Fleet };\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"collaborator\" on \"parent_fleet\";\n\n\t# external authenticator has to create silo users\n\t\"list_children\" if \"external-authenticator\" on \"parent_fleet\";\n\t\"create_child\" if \"external-authenticator\" on \"parent_fleet\";\n}\n\nhas_relation(fleet: Fleet, \"parent_fleet\", silo: Silo)\n\tif silo.fleet = fleet;\n\n# As a special case, all authenticated users can read their own Silo. That's\n# not quite the same as having the \"viewer\" role. For example, they cannot list\n# Organizations in the Silo.\n#\n# One reason this is necessary is because if an unprivileged user tries to\n# create an Organization using \"POST /organizations\", they should get back a 403\n# (which implies they're able to see /organizations, which is essentially seeing\n# the Silo itself) rather than a 404. This behavior isn't a hard constraint\n# (i.e., you could reasonably get a 404 for an API you're not allowed to call).\n# Nor is the implementation (i.e., we could special-case this endpoint somehow).\n# But granting this permission is the simplest way to keep this endpoint's\n# behavior consistent with the rest of the API.\n#\n# This rule is also used to determine if a user can list the identity providers\n# in the Silo (which they should be able to), since that's predicated on being\n# able to read the Silo.\n#\n# It's unclear what else would break if users couldn't see their own Silo.\nhas_permission(actor: AuthenticatedActor, \"read\", silo: Silo)\n\tif silo in actor.silo;\n\nresource Project {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\troles = [ \"admin\", \"collaborator\", \"viewer\" ];\n\n\t# Roles implied by other roles on this resource\n\t\"viewer\" if \"collaborator\";\n\t\"collaborator\" if \"admin\";\n\n\t# Permissions granted directly by roles on this resource\n\t\"list_children\" if \"viewer\";\n\t\"read\" if \"viewer\";\n\t\"create_child\" if \"collaborator\";\n\t\"modify\" if \"admin\";\n\n\t# Roles implied by roles on this resource's parent (Silo)\n\trelations = { parent_silo: Silo };\n\t\"admin\" if \"collaborator\" on \"parent_silo\";\n\t\"viewer\" if \"viewer\" on \"parent_silo\";\n}\nhas_relation(silo: Silo, \"parent_silo\", project: Project)\n\tif project.silo = silo;\n\n#\n# GENERAL RESOURCES OUTSIDE THE SILO/PROJECT HIERARCHY\n#\n# Many resources use snippets of Polar generated by the `authz_resource!` Rust\n# macro. Some resources require custom Polar code. Those appear here.\n#\n\nresource Certificate {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Fleet-level and silo-level roles both grant privileges on certificates.\n\t\"read\" if \"admin\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"read\" if \"admin\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", certificate: Certificate)\n\tif certificate.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", certificate: Certificate)\n\tif certificate.silo.fleet = fleet;\n\nresource SiloUser {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\n\t# Fleet and Silo administrators can manage a Silo's users. This is one\n\t# of the only areas of Silo configuration that Fleet Administrators have\n\t# permissions on.\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\t\"read\" if \"read\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"list_children\" if \"read\" on \"parent_fleet\";\n\t\"read\" if \"read\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", user: SiloUser)\n\tif user.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", user: SiloUser)\n\tif user.silo.fleet = fleet;\n\n# authenticated actors have all permissions on themselves\nhas_permission(actor: AuthenticatedActor, _perm: String, silo_user: SiloUser)\n if actor.equals_silo_user(silo_user);\n\nhas_permission(actor: AuthenticatedActor, \"read\", silo_user: SiloUser)\n if silo_user.silo in actor.silo;\n\nresource SiloGroup {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\n\trelations = { parent_silo: Silo };\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\t\"read\" if \"read\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n}\nhas_relation(silo: Silo, \"parent_silo\", group: SiloGroup)\n\tif group.silo = silo;\n\nresource SshKey {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { silo_user: SiloUser };\n\n\t\"read\" if \"read\" on \"silo_user\";\n\t\"modify\" if \"modify\" on \"silo_user\";\n}\nhas_relation(user: SiloUser, \"silo_user\", ssh_key: SshKey)\n\tif ssh_key.silo_user = user;\n\nresource IdentityProvider {\n\tpermissions = [\n\t \"read\",\n\t \"modify\",\n\t \"create_child\",\n\t \"list_children\",\n\t];\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Silo-level roles grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_silo\";\n\t\"list_children\" if \"viewer\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\n\t# Fleet-level roles also grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", identity_provider: IdentityProvider)\n\tif identity_provider.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: IdentityProvider)\n\tif collection.silo.fleet = fleet;\n\nresource SamlIdentityProvider {\n\tpermissions = [\n\t \"read\",\n\t \"modify\",\n\t \"create_child\",\n\t \"list_children\",\n\t];\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Silo-level roles grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_silo\";\n\t\"list_children\" if \"viewer\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\n\t# Fleet-level roles also grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", saml_identity_provider: SamlIdentityProvider)\n\tif saml_identity_provider.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SamlIdentityProvider)\n\tif collection.silo.fleet = fleet;\n\n#\n# SYNTHETIC RESOURCES OUTSIDE THE SILO HIERARCHY\n#\n# The resources here do not correspond to anything that appears explicitly in\n# the API or is stored in the database. These are used either at the top level\n# of the API path (e.g., \"/v1/system/ip-pools\") or as an implementation detail of the system\n# (in the case of console sessions and \"Database\"). The policies are\n# either statically-defined in this file or driven by role assignments on the\n# Fleet. None of these resources defines their own roles.\n#\n\n# Describes the policy for reading and modifying DNS configuration\n# (both internal and external)\nresource DnsConfig {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { parent_fleet: Fleet };\n\t# \"external-authenticator\" requires these permissions because that's the\n\t# context that Nexus uses when creating and deleting Silos. These\n\t# operations necessarily need to read and modify DNS configuration.\n\t\"read\" if \"external-authenticator\" on \"parent_fleet\";\n\t\"modify\" if \"external-authenticator\" on \"parent_fleet\";\n\t# \"admin\" on the parent fleet also gets these permissions, primarily for\n\t# the test suite.\n\t\"read\" if \"admin\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", dns_config: DnsConfig)\n\tif dns_config.fleet = fleet;\n\n# Describes the policy for accessing blueprints\nresource BlueprintConfig {\n\tpermissions = [\n\t \"list_children\", # list blueprints\n\t \"create_child\", # create blueprint\n\t \"read\", # read the current target\n\t \"modify\", # change the current target\n\t];\n\n\trelations = { parent_fleet: Fleet };\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", list: BlueprintConfig)\n\tif list.fleet = fleet;\n\n# Describes the policy for reading and modifying low-level inventory\nresource Inventory {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { parent_fleet: Fleet };\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", inventory: Inventory)\n\tif inventory.fleet = fleet;\n\n# Describes the policy for accessing \"/v1/system/ip-pools\" in the API\nresource IpPoolList {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"create_child\",\n\t];\n\n\t# Fleet Administrators can create or modify the IP Pools list.\n\trelations = { parent_fleet: Fleet };\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n\n\t# Fleet Viewers can list IP Pools\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", ip_pool_list: IpPoolList)\n\tif ip_pool_list.fleet = fleet;\n\n# Any authenticated user can create a child of a provided IP Pool.\n# This is necessary to use the pools when provisioning instances.\nhas_permission(actor: AuthenticatedActor, \"create_child\", ip_pool: IpPool)\n\tif silo in actor.silo and silo.fleet = ip_pool.fleet;\n\n# Describes the policy for creating and managing web console sessions.\nresource ConsoleSessionList {\n\tpermissions = [ \"create_child\" ];\n\trelations = { parent_fleet: Fleet };\n\t\"create_child\" if \"external-authenticator\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: ConsoleSessionList)\n\tif collection.fleet = fleet;\n\n# Describes the policy for creating and managing device authorization requests.\nresource DeviceAuthRequestList {\n\tpermissions = [ \"create_child\" ];\n\trelations = { parent_fleet: Fleet };\n\t\"create_child\" if \"external-authenticator\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: DeviceAuthRequestList)\n\tif collection.fleet = fleet;\n\n# Describes the policy for creating and managing Silo certificates\nresource SiloCertificateList {\n\tpermissions = [ \"list_children\", \"create_child\" ];\n\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Both Fleet and Silo administrators can see and modify the Silo's\n\t# certificates.\n\t\"list_children\" if \"admin\" on \"parent_silo\";\n\t\"list_children\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", collection: SiloCertificateList)\n\tif collection.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SiloCertificateList)\n\tif collection.silo.fleet = fleet;\n\n# Describes the policy for creating and managing Silo identity providers\nresource SiloIdentityProviderList {\n\tpermissions = [ \"list_children\", \"create_child\" ];\n\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Everyone who can read the Silo (which includes all the users in the\n\t# Silo) can see the identity providers in it.\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\n\t# Fleet and Silo administrators can manage the Silo's identity provider\n\t# configuration. This is one of the only areas of Silo configuration\n\t# that Fleet Administrators have permissions on. This is also one of\n\t# the only cases where we need to look two levels up the hierarchy to\n\t# see if somebody has the right permission. For most other things,\n\t# permissions cascade down the hierarchy so we only need to look at the\n\t# parent.\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", collection: SiloIdentityProviderList)\n\tif collection.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SiloIdentityProviderList)\n\tif collection.silo.fleet = fleet;\n\n# Describes the policy for creating and managing Silo users (mostly intended for\n# API-managed users)\nresource SiloUserList {\n\tpermissions = [ \"list_children\", \"create_child\" ];\n\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Everyone who can read the Silo (which includes all the users in the\n\t# Silo) can see the users in it.\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\n\t# Fleet and Silo administrators can manage the Silo's users. This is\n\t# one of the only areas of Silo configuration that Fleet Administrators\n\t# have permissions on. This is also one of the few cases (so far) where\n\t# we need to look two levels up the hierarchy to see if somebody has the\n\t# right permission. For most other things, permissions cascade down the\n\t# hierarchy so we only need to look at the parent.\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"list_children\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", collection: SiloUserList)\n\tif collection.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SiloUserList)\n\tif collection.silo.fleet = fleet;\n\n# These rules grants the external authenticator role the permissions it needs to\n# read silo users and modify their sessions. This is necessary for login to\n# work.\nhas_permission(actor: AuthenticatedActor, \"read\", silo: Silo)\n\tif has_role(actor, \"external-authenticator\", silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"read\", user: SiloUser)\n\tif has_role(actor, \"external-authenticator\", user.silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"modify\", user: SiloUser)\n\tif has_role(actor, \"external-authenticator\", user.silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"read\", group: SiloGroup)\n\tif has_role(actor, \"external-authenticator\", group.silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"modify\", group: SiloGroup)\n\tif has_role(actor, \"external-authenticator\", group.silo.fleet);\n\nhas_permission(actor: AuthenticatedActor, \"read\", session: ConsoleSession)\n\tif has_role(actor, \"external-authenticator\", session.fleet);\nhas_permission(actor: AuthenticatedActor, \"modify\", session: ConsoleSession)\n\tif has_role(actor, \"external-authenticator\", session.fleet);\n\n# All authenticated users can read and delete device authn requests because\n# by necessity these operations happen before we've figured out what user (or\n# even Silo) the device auth is associated with. Any user can claim a device\n# auth request with the right user code (that's how it works) -- it's the user\n# code and associated logic that prevents unauthorized access here.\nhas_permission(_actor: AuthenticatedActor, \"read\", _device_auth: DeviceAuthRequest);\nhas_permission(_actor: AuthenticatedActor, \"modify\", _device_auth: DeviceAuthRequest);\n\nhas_permission(actor: AuthenticatedActor, \"read\", device_token: DeviceAccessToken)\n\tif has_role(actor, \"external-authenticator\", device_token.fleet);\n\nhas_permission(actor: AuthenticatedActor, \"read\", identity_provider: IdentityProvider)\n\tif has_role(actor, \"external-authenticator\", identity_provider.silo.fleet);\n\nhas_permission(actor: AuthenticatedActor, \"read\", saml_identity_provider: SamlIdentityProvider)\n\tif has_role(actor, \"external-authenticator\", saml_identity_provider.silo.fleet);\n\n# Describes the policy for who can access the internal database.\nresource Database {\n\tpermissions = [\n\t # \"query\" is required to perform any query against the database,\n\t # whether a read or write query. This is checked when an operation\n\t # checks out a database connection from the connection pool.\n\t #\n\t # Any authenticated user gets this permission. There's generally\n\t # some other authz check involved in the database query. For\n\t # example, if you're querying the database to \"read\" a \"Project\", we\n\t # should also be checking that. So why do we do this at all? It's\n\t # a belt-and-suspenders measure so that if we somehow introduced an\n\t # unauthenticated code path that hits the database, it cannot be\n\t # used to DoS the database because we won't allow the operation to\n\t # make the query. (As long as the code path _is_ authenticated, we\n\t # can use throttling mechanisms to prevent DoS.)\n\t \"query\",\n\n\t # \"modify\" is required to populate database data that's delivered\n\t # with the system. It should also be required for schema changes,\n\t # when we support those. This is separate from \"query\" so that we\n\t # cannot accidentally invoke these code paths from API calls and\n\t # other general functions.\n\t \"modify\"\n\t];\n}\n\n# All authenticated users have the \"query\" permission on the database.\nhas_permission(_actor: AuthenticatedActor, \"query\", _resource: Database);\n\n# The \"db-init\" user is the only one with the \"modify\" permission.\nhas_permission(USER_DB_INIT: AuthenticatedActor, \"modify\", _resource: Database);\nhas_permission(USER_DB_INIT: AuthenticatedActor, \"create_child\", _resource: IpPoolList);\n# It also has \"admin\" on the internal silo to populate it with built-in resources.\n# TODO-completeness: actually limit to just internal silo and not all silos\nhas_role(USER_DB_INIT: AuthenticatedActor, \"admin\", _silo: Silo);\n\n# Allow the internal API admin permissions on all silos.\nhas_role(USER_INTERNAL_API: AuthenticatedActor, \"admin\", _silo: Silo);\n\n\n\n resource Disk {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Disk)\n if child.project = parent;\n \n\n resource Snapshot {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Snapshot)\n if child.project = parent;\n \n\n resource ProjectImage {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: ProjectImage)\n if child.project = parent;\n \n\n resource Instance {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Instance)\n if child.project = parent;\n \n\n resource IpPool {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: IpPool)\n if child.fleet = fleet;\n \n\n resource InstanceNetworkInterface {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: Instance\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: InstanceNetworkInterface)\n if has_relation(project, \"containing_project\", child.instance);\n\n has_relation(parent: Instance, \"parent\", child: InstanceNetworkInterface)\n if child.instance = parent;\n \n\n resource Vpc {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Vpc)\n if child.project = parent;\n \n\n resource VpcRouter {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: Vpc\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: VpcRouter)\n if has_relation(project, \"containing_project\", child.vpc);\n\n has_relation(parent: Vpc, \"parent\", child: VpcRouter)\n if child.vpc = parent;\n \n\n resource RouterRoute {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: VpcRouter\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: RouterRoute)\n if has_relation(project, \"containing_project\", child.vpc_router);\n\n has_relation(parent: VpcRouter, \"parent\", child: RouterRoute)\n if child.vpc_router = parent;\n \n\n resource VpcSubnet {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: Vpc\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: VpcSubnet)\n if has_relation(project, \"containing_project\", child.vpc);\n\n has_relation(parent: Vpc, \"parent\", child: VpcSubnet)\n if child.vpc = parent;\n \n\n resource FloatingIp {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: FloatingIp)\n if child.project = parent;\n \n\n resource Image {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_silo: Silo };\n \"list_children\" if \"viewer\" on \"containing_silo\";\n \"read\" if \"viewer\" on \"containing_silo\";\n \"modify\" if \"collaborator\" on \"containing_silo\";\n \"create_child\" if \"collaborator\" on \"containing_silo\";\n }\n\n has_relation(parent: Silo, \"containing_silo\", child: Image)\n if child.silo = parent;\n \n\n resource SiloImage {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_silo: Silo };\n \"list_children\" if \"viewer\" on \"containing_silo\";\n \"read\" if \"viewer\" on \"containing_silo\";\n \"modify\" if \"collaborator\" on \"containing_silo\";\n \"create_child\" if \"collaborator\" on \"containing_silo\";\n }\n\n has_relation(parent: Silo, \"containing_silo\", child: SiloImage)\n if child.silo = parent;\n \n\n resource AddressLot {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: AddressLot)\n if child.fleet = fleet;\n \n\n resource Blueprint {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Blueprint)\n if child.fleet = fleet;\n \n\n resource LoopbackAddress {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: LoopbackAddress)\n if child.fleet = fleet;\n \n\n\n resource ConsoleSession {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: ConsoleSession)\n if child.fleet = fleet;\n \n\n resource DeviceAuthRequest {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: DeviceAuthRequest)\n if child.fleet = fleet;\n \n\n resource DeviceAccessToken {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: DeviceAccessToken)\n if child.fleet = fleet;\n \n\n resource PhysicalDisk {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: PhysicalDisk)\n if child.fleet = fleet;\n \n\n resource Rack {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Rack)\n if child.fleet = fleet;\n \n\n resource RoleBuiltin {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: RoleBuiltin)\n if child.fleet = fleet;\n \n\n\n\n\n\n\n\n resource Sled {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Sled)\n if child.fleet = fleet;\n \n\n resource TufRepo {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: TufRepo)\n if child.fleet = fleet;\n \n\n resource TufArtifact {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: TufArtifact)\n if child.fleet = fleet;\n \n\n resource Zpool {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Zpool)\n if child.fleet = fleet;\n \n\n resource Service {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Service)\n if child.fleet = fleet;\n \n\n resource UserBuiltin {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: UserBuiltin)\n if child.fleet = fleet;\n "} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.246964033Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.247029536Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.248443382Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in users","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.248500886Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.249349231Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.249404384Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.249452297Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created 5 built-in users","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.273235454Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.27409082Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.274159974Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.275567069Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.275626992Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.27651525Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.276577174Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.276621386Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created 10 built-in roles","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.321303497Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.321364401Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.321401093Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.322954546Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in role assignments","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.323518666Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.323568259Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.323605701Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.323644613Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created 4 built-in role assignments","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.349160094Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.349226427Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.349264429Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.351658498Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in silos","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.351719821Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.351758553Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.351809236Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.352144354Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created 2 built-in silos","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.409374839Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.409527448Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.409722088Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.410434196Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.435274101Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.435331814Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.43692543Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in projects","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.438826052Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.438877475Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.438912237Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.438951769Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.439090736Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.439143799Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.439213853Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.439270366Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.439595033Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.442808186Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.442865399Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.442911541Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.443498543Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.444339898Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.447298807Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.447369421Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.448122001Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.448189335Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.448233598Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.448584226Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.449863025Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.449925518Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.449975681Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.450309979Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.457561819Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.460432183Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.46056716Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.460603302Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.460904048Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created built-in services project","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.500530657Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.500601921Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.500651874Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.502429389Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in VPCs","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.502508083Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.502547986Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.502583098Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.502977529Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.517920082Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.518025308Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.518669612Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.519808613Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.520010724Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.520087998Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.520132941Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.52048088Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.525499559Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.525563553Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.525608315Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.526029798Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.526994669Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.527170959Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.527222912Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.527475025Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.52998339Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.533792664Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"successful lookup of siloed resource \"Project\" using built-in user","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.53389599Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.533950463Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.534018307Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.534057989Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.534104541Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.534391927Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.535410262Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.535965691Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.536029745Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.536065497Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.536766104Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.536821837Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.536890371Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.537341875Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.538277176Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.543591681Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.543649264Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.543680596Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.544165292Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.568627575Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.568697729Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.569190785Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.589866265Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ByName(\"oxide-services\") }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.590004973Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.590062276Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.590111979Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.590907771Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.591971848Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.592979913Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.593025125Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.593058807Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.593522302Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.593584415Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.593643688Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.594186838Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.595952412Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.601897122Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ByName(\"oxide-services\") }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.601972916Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.602020248Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.602524545Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.631685221Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"VpcRouter { parent: Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ByName(\"oxide-services\") }, key: 001de000-074c-4000-8000-000000000001, lookup_type: ById(001de000-074c-4000-8000-000000000001) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.631908243Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.631960786Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.632005578Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.632614511Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.640061611Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.640135965Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.640180277Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.640923017Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.642047807Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.642110971Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.642173584Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.642684171Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.643620161Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.649677827Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"VpcRouter { parent: Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ByName(\"oxide-services\") }, key: 001de000-074c-4000-8000-000000000001, lookup_type: ById(001de000-074c-4000-8000-000000000001) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.649801654Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.649872227Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.650323442Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create built-in VPC firewall rules","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.700159127Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.700230091Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.700278374Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.700975481Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.703866696Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.70392796Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.70467476Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.712662549Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.712723872Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.713366167Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.71547707Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.716453723Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.716527936Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.716584739Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.716628362Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.718232928Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.718359934Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.718485791Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.719109765Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.720033964Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.720087817Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.72013356Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.720672819Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.722161038Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.726931685Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"successful lookup of siloed resource \"Vpc\" using built-in user","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.727019959Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.727075482Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"Read","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.727124485Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.727167387Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.727228971Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.727450613Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.731163892Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.731563114Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.731620447Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.732025058Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.754092333Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.755184312Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.755227014Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.755269846Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.755872599Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.762124444Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"Read","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.76223151Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.762321895Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.762918597Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.798599503Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.798673917Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.79873066Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.798785083Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.798835995Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.799734363Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.799794247Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.79985192Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.800152306Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.801018643Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.801566192Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.801635246Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.801668307Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.80246491Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.81232352Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.812393823Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.812473708Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.81306085Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created built-in VPC firewall rules","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.842453828Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"attempting to create built-in VPC Subnets","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.842519761Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.842544762Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.842589675Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.843294623Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.869048865Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.86912674Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.869704611Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.871471046Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.871529729Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.871859467Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.872944495Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.873081562Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.873130955Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.873184488Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.873576419Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.874500609Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.874857328Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.874910711Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.874957533Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.876616402Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.876784611Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.876833003Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.876871745Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.884823322Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.890118647Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"successful lookup of siloed resource \"Vpc\" using built-in user","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.890246034Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.890324598Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.89036784Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.89073419Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.906445923Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.90656784Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.906606802Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.906632603Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.907304879Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.915952444Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.916092741Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.916206328Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.917143518Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.926730353Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.926793376Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.926842209Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.926886171Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.926944214Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.926978146Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.934731262Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.934790905Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.935393127Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.937460449Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.937535262Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.937583575Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.937616267Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.938203608Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.940161923Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.940247608Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.940305861Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.940619928Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.948894063Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.948976447Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.949890946Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.949932448Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.95052423Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.954901645Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.964456488Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.964523171Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.964967275Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.966065224Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.966282216Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-4401-4000-8000-000000000000","resource_type":"Project","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.966337979Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.966382891Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.966586012Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.967508092Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000001","resource_type":"Silo","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.96802722Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.968074582Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.968111404Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.97565743Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.975753385Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.975813448Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.976442012Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.977612925Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.986489121Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Vpc { parent: Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000001, lookup_type: ById(001de000-5110-4000-8000-000000000001) }, key: 001de000-4401-4000-8000-000000000000, lookup_type: ById(001de000-4401-4000-8000-000000000000) }, key: 001de000-074c-4000-8000-000000000000, lookup_type: ById(001de000-074c-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created built-in services vpc subnets","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.995951229Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"created built-in services vpc","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:14.996009862Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:14.996042444Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.996080186Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.999792625Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Modify","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"attempting to create silo users","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:14.999928323Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.000025828Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.000110413Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.000846452Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created 2 silo users","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.021516562Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"attempting to create silo user role assignments","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.021684551Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.021751164Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.021789396Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.022330966Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"created 2 silo user role assignments","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.050692758Z","hostname":"ip-10-150-1-168","pid":22742} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.050770573Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.050823685Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.051446609Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.057479683Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.057535896Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.057962769Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.080937702Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"IpPoolList","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.081009756Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.081052408Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.08108893Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.081563516Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.083014904Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.084733536Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"IpPoolList","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.084848192Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.084897545Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.085320388Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.106477513Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"IpPoolList","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.10659628Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.106642993Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.106678534Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.107179971Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.108357305Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.110085747Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"IpPoolList","action":"CreateChild","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.110394494Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.110448267Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.110583594Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::UserBuiltin { user_builtin_id: 001de000-05e4-4000-8000-000000000001, .. })"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181131052Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Action"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181192275Z","hostname":"ip-10-150-1-168","pid":22742,"class":"AnyActor"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181241128Z","hostname":"ip-10-150-1-168","pid":22742,"class":"AuthenticatedActor"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181301261Z","hostname":"ip-10-150-1-168","pid":22742,"class":"BlueprintConfig"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181340593Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Database"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181384885Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DnsConfig"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181411047Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Fleet"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181433628Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Inventory"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.18147086Z","hostname":"ip-10-150-1-168","pid":22742,"class":"IpPoolList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181496801Z","hostname":"ip-10-150-1-168","pid":22742,"class":"ConsoleSessionList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181517493Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DeviceAuthRequestList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181552174Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloCertificateList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181592277Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloIdentityProviderList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181644329Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloUserList"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181677621Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Project"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181709753Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Disk"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181757915Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Snapshot"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181819079Z","hostname":"ip-10-150-1-168","pid":22742,"class":"ProjectImage"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181862681Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Instance"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181903643Z","hostname":"ip-10-150-1-168","pid":22742,"class":"IpPool"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181945965Z","hostname":"ip-10-150-1-168","pid":22742,"class":"InstanceNetworkInterface"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.181983698Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Vpc"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.18202312Z","hostname":"ip-10-150-1-168","pid":22742,"class":"VpcRouter"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182065922Z","hostname":"ip-10-150-1-168","pid":22742,"class":"RouterRoute"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182112114Z","hostname":"ip-10-150-1-168","pid":22742,"class":"VpcSubnet"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182143766Z","hostname":"ip-10-150-1-168","pid":22742,"class":"FloatingIp"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182179278Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Image"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.1822093Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloImage"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182241071Z","hostname":"ip-10-150-1-168","pid":22742,"class":"AddressLot"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182277603Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Blueprint"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182329016Z","hostname":"ip-10-150-1-168","pid":22742,"class":"LoopbackAddress"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182425241Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Certificate"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182483324Z","hostname":"ip-10-150-1-168","pid":22742,"class":"ConsoleSession"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.18258784Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DeviceAuthRequest"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182650613Z","hostname":"ip-10-150-1-168","pid":22742,"class":"DeviceAccessToken"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182693576Z","hostname":"ip-10-150-1-168","pid":22742,"class":"PhysicalDisk"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182752359Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Rack"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182799371Z","hostname":"ip-10-150-1-168","pid":22742,"class":"RoleBuiltin"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182835453Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SshKey"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182870045Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Silo"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.182904617Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloUser"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.18296922Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SiloGroup"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183056075Z","hostname":"ip-10-150-1-168","pid":22742,"class":"IdentityProvider"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183097717Z","hostname":"ip-10-150-1-168","pid":22742,"class":"SamlIdentityProvider"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.18314337Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Sled"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183192103Z","hostname":"ip-10-150-1-168","pid":22742,"class":"TufRepo"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183267716Z","hostname":"ip-10-150-1-168","pid":22742,"class":"TufArtifact"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183317769Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Zpool"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183358511Z","hostname":"ip-10-150-1-168","pid":22742,"class":"Service"} {"msg":"registering Oso class","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183438776Z","hostname":"ip-10-150-1-168","pid":22742,"class":"UserBuiltin"} {"msg":"full Oso configuration","v":0,"name":"test_insert_sequential_ip_allocation","level":30,"time":"2024-02-14T20:43:15.183504889Z","hostname":"ip-10-150-1-168","pid":22742,"config":"#\n# Oso configuration for Omicron\n# This file is augmented by generated snippets.\n#\n\n#\n# ACTOR TYPES AND BASIC RULES\n#\n\n# `AnyActor` includes both authenticated and unauthenticated users.\nactor AnyActor {}\n\n# An `AuthenticatedActor` has an identity in the system. All of our operations\n# today require that an actor be authenticated.\nactor AuthenticatedActor {}\n\n# For any resource, `actor` can perform action `action` on it if they're\n# authenticated and their role(s) give them the corresponding permission on that\n# resource.\nallow(actor: AnyActor, action: Action, resource) if\n actor.authenticated and\n has_permission(actor.authn_actor.unwrap(), action.to_perm(), resource);\n\n# Define role relationships\nhas_role(actor: AuthenticatedActor, role: String, resource: Resource)\n\tif resource.has_role(actor, role);\n\n#\n# ROLES AND PERMISSIONS IN THE FLEET/SILO/PROJECT HIERARCHY\n#\n# We define the following permissions for most resources in the system:\n#\n# - \"create_child\": required to create child resources (of any type)\n#\n# - \"list_children\": required to list child resources (of all types) of a\n# resource\n#\n# - \"modify\": required to modify or delete a resource\n#\n# - \"read\": required to read a resource\n#\n# We define the following predefined roles for only a few high-level resources:\n# the Fleet (see below), Silo, Organization, and Project. The specific roles\n# are oriented around intended use-cases:\n#\n# - \"admin\": has all permissions on the resource\n#\n# - \"collaborator\": has \"read\", \"list_children\", and \"create_child\", plus\n# the \"admin\" role for child resources. The idea is that if you're an\n# Organization Collaborator, you have full control over the Projects within\n# the Organization, but you cannot modify or delete the Organization itself.\n#\n# - \"viewer\": has \"read\" and \"list_children\" on a resource\n#\n# Below the Project level, permissions are granted via roles at the Project\n# level. For example, for someone to be able to create, modify, or delete any\n# Instances, they must be granted project.collaborator, which means they can\n# create, modify, or delete _all_ resources in the Project.\n#\n# The complete set of predefined roles:\n#\n# - fleet.admin (superuser for the whole system)\n# - fleet.collaborator (can manage Silos)\n# - fleet.viewer (can read most non-siloed resources in the system)\n# - silo.admin (superuser for the silo)\n# - silo.collaborator (can create and own Organizations)\n# - silo.viewer (can read most resources within the Silo)\n# - organization.admin (complete control over an organization)\n# - organization.collaborator (can manage Projects)\n# - organization.viewer (can read most resources within the Organization)\n# - project.admin (complete control over a Project)\n# - project.collaborator (can manage all resources within the Project)\n# - project.viewer (can read most resources within the Project)\n#\n# Outside the Silo/Organization/Project hierarchy, we (currently) treat most\n# resources as nested under Fleet or else a synthetic resource (see below). We\n# do not yet support role assignments on anything other than Fleet, Silo,\n# Organization, or Project.\n#\n\n# \"Fleet\" is a global singleton representing the whole system. The name comes\n# from the idea described in RFD 24, but it's not quite right. This probably\n# should be more like \"Region\" or \"AvailabilityZone\". The precise boundaries\n# have not yet been figured out.\nresource Fleet {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\n\troles = [\n\t # Roles that can be attached by users\n\t \"admin\",\n\t \"collaborator\",\n\t \"viewer\",\n\n\t # Internal-only roles\n\t \"external-authenticator\"\n\t];\n\n\t# Roles implied by other roles on this resource\n\t\"viewer\" if \"collaborator\";\n\t\"collaborator\" if \"admin\";\n\n\t# Permissions granted directly by roles on this resource\n\t\"list_children\" if \"viewer\";\n\t\"read\" if \"viewer\";\n\t\"create_child\" if \"collaborator\";\n\t\"modify\" if \"admin\";\n}\n\n# For fleets specifically, roles can be conferred by roles on the user's Silo.\nhas_role(actor: AuthenticatedActor, role: String, _: Fleet) if\n\tsilo_role in actor.confers_fleet_role(role) and\n\thas_role(actor, silo_role, actor.silo.unwrap());\n\nresource Silo {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\troles = [ \"admin\", \"collaborator\", \"viewer\" ];\n\n\t# Roles implied by other roles on this resource\n\t\"viewer\" if \"collaborator\";\n\t\"collaborator\" if \"admin\";\n\n\t# Permissions granted directly by roles on this resource\n\t\"list_children\" if \"viewer\";\n\t\"read\" if \"viewer\";\n\n\t\"create_child\" if \"collaborator\";\n\t\"modify\" if \"admin\";\n\n\t# Permissions implied by roles on this resource's parent (Fleet). Fleet\n\t# privileges allow a user to see and potentially administer the Silo,\n\t# but they do not give anyone permission to look at anything inside the\n\t# Silo. To achieve this, we use permission rules here. (If we granted\n\t# Fleet administrators _roles_ on the Silo, then those would cascade\n\t# into the Silo as well.)\n\trelations = { parent_fleet: Fleet };\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"collaborator\" on \"parent_fleet\";\n\n\t# external authenticator has to create silo users\n\t\"list_children\" if \"external-authenticator\" on \"parent_fleet\";\n\t\"create_child\" if \"external-authenticator\" on \"parent_fleet\";\n}\n\nhas_relation(fleet: Fleet, \"parent_fleet\", silo: Silo)\n\tif silo.fleet = fleet;\n\n# As a special case, all authenticated users can read their own Silo. That's\n# not quite the same as having the \"viewer\" role. For example, they cannot list\n# Organizations in the Silo.\n#\n# One reason this is necessary is because if an unprivileged user tries to\n# create an Organization using \"POST /organizations\", they should get back a 403\n# (which implies they're able to see /organizations, which is essentially seeing\n# the Silo itself) rather than a 404. This behavior isn't a hard constraint\n# (i.e., you could reasonably get a 404 for an API you're not allowed to call).\n# Nor is the implementation (i.e., we could special-case this endpoint somehow).\n# But granting this permission is the simplest way to keep this endpoint's\n# behavior consistent with the rest of the API.\n#\n# This rule is also used to determine if a user can list the identity providers\n# in the Silo (which they should be able to), since that's predicated on being\n# able to read the Silo.\n#\n# It's unclear what else would break if users couldn't see their own Silo.\nhas_permission(actor: AuthenticatedActor, \"read\", silo: Silo)\n\tif silo in actor.silo;\n\nresource Project {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\troles = [ \"admin\", \"collaborator\", \"viewer\" ];\n\n\t# Roles implied by other roles on this resource\n\t\"viewer\" if \"collaborator\";\n\t\"collaborator\" if \"admin\";\n\n\t# Permissions granted directly by roles on this resource\n\t\"list_children\" if \"viewer\";\n\t\"read\" if \"viewer\";\n\t\"create_child\" if \"collaborator\";\n\t\"modify\" if \"admin\";\n\n\t# Roles implied by roles on this resource's parent (Silo)\n\trelations = { parent_silo: Silo };\n\t\"admin\" if \"collaborator\" on \"parent_silo\";\n\t\"viewer\" if \"viewer\" on \"parent_silo\";\n}\nhas_relation(silo: Silo, \"parent_silo\", project: Project)\n\tif project.silo = silo;\n\n#\n# GENERAL RESOURCES OUTSIDE THE SILO/PROJECT HIERARCHY\n#\n# Many resources use snippets of Polar generated by the `authz_resource!` Rust\n# macro. Some resources require custom Polar code. Those appear here.\n#\n\nresource Certificate {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Fleet-level and silo-level roles both grant privileges on certificates.\n\t\"read\" if \"admin\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"read\" if \"admin\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", certificate: Certificate)\n\tif certificate.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", certificate: Certificate)\n\tif certificate.silo.fleet = fleet;\n\nresource SiloUser {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\n\t# Fleet and Silo administrators can manage a Silo's users. This is one\n\t# of the only areas of Silo configuration that Fleet Administrators have\n\t# permissions on.\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\t\"read\" if \"read\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"list_children\" if \"read\" on \"parent_fleet\";\n\t\"read\" if \"read\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", user: SiloUser)\n\tif user.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", user: SiloUser)\n\tif user.silo.fleet = fleet;\n\n# authenticated actors have all permissions on themselves\nhas_permission(actor: AuthenticatedActor, _perm: String, silo_user: SiloUser)\n if actor.equals_silo_user(silo_user);\n\nhas_permission(actor: AuthenticatedActor, \"read\", silo_user: SiloUser)\n if silo_user.silo in actor.silo;\n\nresource SiloGroup {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"read\",\n\t \"create_child\",\n\t];\n\n\trelations = { parent_silo: Silo };\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\t\"read\" if \"read\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n}\nhas_relation(silo: Silo, \"parent_silo\", group: SiloGroup)\n\tif group.silo = silo;\n\nresource SshKey {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { silo_user: SiloUser };\n\n\t\"read\" if \"read\" on \"silo_user\";\n\t\"modify\" if \"modify\" on \"silo_user\";\n}\nhas_relation(user: SiloUser, \"silo_user\", ssh_key: SshKey)\n\tif ssh_key.silo_user = user;\n\nresource IdentityProvider {\n\tpermissions = [\n\t \"read\",\n\t \"modify\",\n\t \"create_child\",\n\t \"list_children\",\n\t];\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Silo-level roles grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_silo\";\n\t\"list_children\" if \"viewer\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\n\t# Fleet-level roles also grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", identity_provider: IdentityProvider)\n\tif identity_provider.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: IdentityProvider)\n\tif collection.silo.fleet = fleet;\n\nresource SamlIdentityProvider {\n\tpermissions = [\n\t \"read\",\n\t \"modify\",\n\t \"create_child\",\n\t \"list_children\",\n\t];\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Silo-level roles grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_silo\";\n\t\"list_children\" if \"viewer\" on \"parent_silo\";\n\t\"modify\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\n\t# Fleet-level roles also grant privileges on identity providers.\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", saml_identity_provider: SamlIdentityProvider)\n\tif saml_identity_provider.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SamlIdentityProvider)\n\tif collection.silo.fleet = fleet;\n\n#\n# SYNTHETIC RESOURCES OUTSIDE THE SILO HIERARCHY\n#\n# The resources here do not correspond to anything that appears explicitly in\n# the API or is stored in the database. These are used either at the top level\n# of the API path (e.g., \"/v1/system/ip-pools\") or as an implementation detail of the system\n# (in the case of console sessions and \"Database\"). The policies are\n# either statically-defined in this file or driven by role assignments on the\n# Fleet. None of these resources defines their own roles.\n#\n\n# Describes the policy for reading and modifying DNS configuration\n# (both internal and external)\nresource DnsConfig {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { parent_fleet: Fleet };\n\t# \"external-authenticator\" requires these permissions because that's the\n\t# context that Nexus uses when creating and deleting Silos. These\n\t# operations necessarily need to read and modify DNS configuration.\n\t\"read\" if \"external-authenticator\" on \"parent_fleet\";\n\t\"modify\" if \"external-authenticator\" on \"parent_fleet\";\n\t# \"admin\" on the parent fleet also gets these permissions, primarily for\n\t# the test suite.\n\t\"read\" if \"admin\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", dns_config: DnsConfig)\n\tif dns_config.fleet = fleet;\n\n# Describes the policy for accessing blueprints\nresource BlueprintConfig {\n\tpermissions = [\n\t \"list_children\", # list blueprints\n\t \"create_child\", # create blueprint\n\t \"read\", # read the current target\n\t \"modify\", # change the current target\n\t];\n\n\trelations = { parent_fleet: Fleet };\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", list: BlueprintConfig)\n\tif list.fleet = fleet;\n\n# Describes the policy for reading and modifying low-level inventory\nresource Inventory {\n\tpermissions = [ \"read\", \"modify\" ];\n\trelations = { parent_fleet: Fleet };\n\t\"read\" if \"viewer\" on \"parent_fleet\";\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", inventory: Inventory)\n\tif inventory.fleet = fleet;\n\n# Describes the policy for accessing \"/v1/system/ip-pools\" in the API\nresource IpPoolList {\n\tpermissions = [\n\t \"list_children\",\n\t \"modify\",\n\t \"create_child\",\n\t];\n\n\t# Fleet Administrators can create or modify the IP Pools list.\n\trelations = { parent_fleet: Fleet };\n\t\"modify\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n\n\t# Fleet Viewers can list IP Pools\n\t\"list_children\" if \"viewer\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", ip_pool_list: IpPoolList)\n\tif ip_pool_list.fleet = fleet;\n\n# Any authenticated user can create a child of a provided IP Pool.\n# This is necessary to use the pools when provisioning instances.\nhas_permission(actor: AuthenticatedActor, \"create_child\", ip_pool: IpPool)\n\tif silo in actor.silo and silo.fleet = ip_pool.fleet;\n\n# Describes the policy for creating and managing web console sessions.\nresource ConsoleSessionList {\n\tpermissions = [ \"create_child\" ];\n\trelations = { parent_fleet: Fleet };\n\t\"create_child\" if \"external-authenticator\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: ConsoleSessionList)\n\tif collection.fleet = fleet;\n\n# Describes the policy for creating and managing device authorization requests.\nresource DeviceAuthRequestList {\n\tpermissions = [ \"create_child\" ];\n\trelations = { parent_fleet: Fleet };\n\t\"create_child\" if \"external-authenticator\" on \"parent_fleet\";\n}\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: DeviceAuthRequestList)\n\tif collection.fleet = fleet;\n\n# Describes the policy for creating and managing Silo certificates\nresource SiloCertificateList {\n\tpermissions = [ \"list_children\", \"create_child\" ];\n\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Both Fleet and Silo administrators can see and modify the Silo's\n\t# certificates.\n\t\"list_children\" if \"admin\" on \"parent_silo\";\n\t\"list_children\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", collection: SiloCertificateList)\n\tif collection.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SiloCertificateList)\n\tif collection.silo.fleet = fleet;\n\n# Describes the policy for creating and managing Silo identity providers\nresource SiloIdentityProviderList {\n\tpermissions = [ \"list_children\", \"create_child\" ];\n\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Everyone who can read the Silo (which includes all the users in the\n\t# Silo) can see the identity providers in it.\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\n\t# Fleet and Silo administrators can manage the Silo's identity provider\n\t# configuration. This is one of the only areas of Silo configuration\n\t# that Fleet Administrators have permissions on. This is also one of\n\t# the only cases where we need to look two levels up the hierarchy to\n\t# see if somebody has the right permission. For most other things,\n\t# permissions cascade down the hierarchy so we only need to look at the\n\t# parent.\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", collection: SiloIdentityProviderList)\n\tif collection.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SiloIdentityProviderList)\n\tif collection.silo.fleet = fleet;\n\n# Describes the policy for creating and managing Silo users (mostly intended for\n# API-managed users)\nresource SiloUserList {\n\tpermissions = [ \"list_children\", \"create_child\" ];\n\n\trelations = { parent_silo: Silo, parent_fleet: Fleet };\n\n\t# Everyone who can read the Silo (which includes all the users in the\n\t# Silo) can see the users in it.\n\t\"list_children\" if \"read\" on \"parent_silo\";\n\n\t# Fleet and Silo administrators can manage the Silo's users. This is\n\t# one of the only areas of Silo configuration that Fleet Administrators\n\t# have permissions on. This is also one of the few cases (so far) where\n\t# we need to look two levels up the hierarchy to see if somebody has the\n\t# right permission. For most other things, permissions cascade down the\n\t# hierarchy so we only need to look at the parent.\n\t\"create_child\" if \"admin\" on \"parent_silo\";\n\t\"list_children\" if \"admin\" on \"parent_fleet\";\n\t\"create_child\" if \"admin\" on \"parent_fleet\";\n}\nhas_relation(silo: Silo, \"parent_silo\", collection: SiloUserList)\n\tif collection.silo = silo;\nhas_relation(fleet: Fleet, \"parent_fleet\", collection: SiloUserList)\n\tif collection.silo.fleet = fleet;\n\n# These rules grants the external authenticator role the permissions it needs to\n# read silo users and modify their sessions. This is necessary for login to\n# work.\nhas_permission(actor: AuthenticatedActor, \"read\", silo: Silo)\n\tif has_role(actor, \"external-authenticator\", silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"read\", user: SiloUser)\n\tif has_role(actor, \"external-authenticator\", user.silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"modify\", user: SiloUser)\n\tif has_role(actor, \"external-authenticator\", user.silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"read\", group: SiloGroup)\n\tif has_role(actor, \"external-authenticator\", group.silo.fleet);\nhas_permission(actor: AuthenticatedActor, \"modify\", group: SiloGroup)\n\tif has_role(actor, \"external-authenticator\", group.silo.fleet);\n\nhas_permission(actor: AuthenticatedActor, \"read\", session: ConsoleSession)\n\tif has_role(actor, \"external-authenticator\", session.fleet);\nhas_permission(actor: AuthenticatedActor, \"modify\", session: ConsoleSession)\n\tif has_role(actor, \"external-authenticator\", session.fleet);\n\n# All authenticated users can read and delete device authn requests because\n# by necessity these operations happen before we've figured out what user (or\n# even Silo) the device auth is associated with. Any user can claim a device\n# auth request with the right user code (that's how it works) -- it's the user\n# code and associated logic that prevents unauthorized access here.\nhas_permission(_actor: AuthenticatedActor, \"read\", _device_auth: DeviceAuthRequest);\nhas_permission(_actor: AuthenticatedActor, \"modify\", _device_auth: DeviceAuthRequest);\n\nhas_permission(actor: AuthenticatedActor, \"read\", device_token: DeviceAccessToken)\n\tif has_role(actor, \"external-authenticator\", device_token.fleet);\n\nhas_permission(actor: AuthenticatedActor, \"read\", identity_provider: IdentityProvider)\n\tif has_role(actor, \"external-authenticator\", identity_provider.silo.fleet);\n\nhas_permission(actor: AuthenticatedActor, \"read\", saml_identity_provider: SamlIdentityProvider)\n\tif has_role(actor, \"external-authenticator\", saml_identity_provider.silo.fleet);\n\n# Describes the policy for who can access the internal database.\nresource Database {\n\tpermissions = [\n\t # \"query\" is required to perform any query against the database,\n\t # whether a read or write query. This is checked when an operation\n\t # checks out a database connection from the connection pool.\n\t #\n\t # Any authenticated user gets this permission. There's generally\n\t # some other authz check involved in the database query. For\n\t # example, if you're querying the database to \"read\" a \"Project\", we\n\t # should also be checking that. So why do we do this at all? It's\n\t # a belt-and-suspenders measure so that if we somehow introduced an\n\t # unauthenticated code path that hits the database, it cannot be\n\t # used to DoS the database because we won't allow the operation to\n\t # make the query. (As long as the code path _is_ authenticated, we\n\t # can use throttling mechanisms to prevent DoS.)\n\t \"query\",\n\n\t # \"modify\" is required to populate database data that's delivered\n\t # with the system. It should also be required for schema changes,\n\t # when we support those. This is separate from \"query\" so that we\n\t # cannot accidentally invoke these code paths from API calls and\n\t # other general functions.\n\t \"modify\"\n\t];\n}\n\n# All authenticated users have the \"query\" permission on the database.\nhas_permission(_actor: AuthenticatedActor, \"query\", _resource: Database);\n\n# The \"db-init\" user is the only one with the \"modify\" permission.\nhas_permission(USER_DB_INIT: AuthenticatedActor, \"modify\", _resource: Database);\nhas_permission(USER_DB_INIT: AuthenticatedActor, \"create_child\", _resource: IpPoolList);\n# It also has \"admin\" on the internal silo to populate it with built-in resources.\n# TODO-completeness: actually limit to just internal silo and not all silos\nhas_role(USER_DB_INIT: AuthenticatedActor, \"admin\", _silo: Silo);\n\n# Allow the internal API admin permissions on all silos.\nhas_role(USER_INTERNAL_API: AuthenticatedActor, \"admin\", _silo: Silo);\n\n\n\n resource Disk {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Disk)\n if child.project = parent;\n \n\n resource Snapshot {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Snapshot)\n if child.project = parent;\n \n\n resource ProjectImage {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: ProjectImage)\n if child.project = parent;\n \n\n resource Instance {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Instance)\n if child.project = parent;\n \n\n resource IpPool {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: IpPool)\n if child.fleet = fleet;\n \n\n resource InstanceNetworkInterface {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: Instance\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: InstanceNetworkInterface)\n if has_relation(project, \"containing_project\", child.instance);\n\n has_relation(parent: Instance, \"parent\", child: InstanceNetworkInterface)\n if child.instance = parent;\n \n\n resource Vpc {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: Vpc)\n if child.project = parent;\n \n\n resource VpcRouter {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: Vpc\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: VpcRouter)\n if has_relation(project, \"containing_project\", child.vpc);\n\n has_relation(parent: Vpc, \"parent\", child: VpcRouter)\n if child.vpc = parent;\n \n\n resource RouterRoute {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: VpcRouter\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: RouterRoute)\n if has_relation(project, \"containing_project\", child.vpc_router);\n\n has_relation(parent: VpcRouter, \"parent\", child: RouterRoute)\n if child.vpc_router = parent;\n \n\n resource VpcSubnet {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = {\n containing_project: Project,\n parent: Vpc\n };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(project: Project, \"containing_project\", child: VpcSubnet)\n if has_relation(project, \"containing_project\", child.vpc);\n\n has_relation(parent: Vpc, \"parent\", child: VpcSubnet)\n if child.vpc = parent;\n \n\n resource FloatingIp {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_project: Project };\n \"list_children\" if \"viewer\" on \"containing_project\";\n \"read\" if \"viewer\" on \"containing_project\";\n \"modify\" if \"collaborator\" on \"containing_project\";\n \"create_child\" if \"collaborator\" on \"containing_project\";\n }\n\n has_relation(parent: Project, \"containing_project\", child: FloatingIp)\n if child.project = parent;\n \n\n resource Image {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_silo: Silo };\n \"list_children\" if \"viewer\" on \"containing_silo\";\n \"read\" if \"viewer\" on \"containing_silo\";\n \"modify\" if \"collaborator\" on \"containing_silo\";\n \"create_child\" if \"collaborator\" on \"containing_silo\";\n }\n\n has_relation(parent: Silo, \"containing_silo\", child: Image)\n if child.silo = parent;\n \n\n resource SiloImage {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n\n relations = { containing_silo: Silo };\n \"list_children\" if \"viewer\" on \"containing_silo\";\n \"read\" if \"viewer\" on \"containing_silo\";\n \"modify\" if \"collaborator\" on \"containing_silo\";\n \"create_child\" if \"collaborator\" on \"containing_silo\";\n }\n\n has_relation(parent: Silo, \"containing_silo\", child: SiloImage)\n if child.silo = parent;\n \n\n resource AddressLot {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: AddressLot)\n if child.fleet = fleet;\n \n\n resource Blueprint {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Blueprint)\n if child.fleet = fleet;\n \n\n resource LoopbackAddress {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: LoopbackAddress)\n if child.fleet = fleet;\n \n\n\n resource ConsoleSession {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: ConsoleSession)\n if child.fleet = fleet;\n \n\n resource DeviceAuthRequest {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: DeviceAuthRequest)\n if child.fleet = fleet;\n \n\n resource DeviceAccessToken {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: DeviceAccessToken)\n if child.fleet = fleet;\n \n\n resource PhysicalDisk {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: PhysicalDisk)\n if child.fleet = fleet;\n \n\n resource Rack {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Rack)\n if child.fleet = fleet;\n \n\n resource RoleBuiltin {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: RoleBuiltin)\n if child.fleet = fleet;\n \n\n\n\n\n\n\n\n resource Sled {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Sled)\n if child.fleet = fleet;\n \n\n resource TufRepo {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: TufRepo)\n if child.fleet = fleet;\n \n\n resource TufArtifact {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: TufArtifact)\n if child.fleet = fleet;\n \n\n resource Zpool {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Zpool)\n if child.fleet = fleet;\n \n\n resource Service {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: Service)\n if child.fleet = fleet;\n \n\n resource UserBuiltin {\n permissions = [\n \"list_children\",\n \"modify\",\n \"read\",\n \"create_child\",\n ];\n \n relations = { parent_fleet: Fleet };\n \"list_children\" if \"viewer\" on \"parent_fleet\";\n \"read\" if \"viewer\" on \"parent_fleet\";\n \"modify\" if \"admin\" on \"parent_fleet\";\n \"create_child\" if \"admin\" on \"parent_fleet\";\n }\n has_relation(fleet: Fleet, \"parent_fleet\", child: UserBuiltin)\n if child.fleet = fleet;\n "} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.194155061Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000000, lookup_type: ById(001de000-5110-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.194375633Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000000","resource_type":"Silo","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.194407445Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.194439646Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.194818247Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.208487631Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.208551304Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.208588366Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.209199419Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.21109333Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {(Fleet, 001de000-1334-4000-8000-000000000000, \"admin\"), (Silo, 001de000-5110-4000-8000-000000000000, \"admin\")} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.213839118Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000000, lookup_type: ById(001de000-5110-4000-8000-000000000000) }","action":"CreateChild","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.213907722Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.213967735Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.214291612Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.243747634Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.243846819Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.244469233Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.280134317Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.280203601Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.28112071Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.282363137Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.28241862Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.283025883Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.284083039Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000000, lookup_type: ById(001de000-5110-4000-8000-000000000000) }, key: fd9bcc1f-d9f2-460e-be4c-0cf005d33830, lookup_type: ById(fd9bcc1f-d9f2-460e-be4c-0cf005d33830) }","action":"CreateChild","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.284166954Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"fd9bcc1f-d9f2-460e-be4c-0cf005d33830","resource_type":"Project","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.284216027Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.284261509Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.285257823Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.286558232Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000000","resource_type":"Silo","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.28688637Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.286961864Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.287182616Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.289047406Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.289104619Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.289147231Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.289564214Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.291114377Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {(Fleet, 001de000-1334-4000-8000-000000000000, \"admin\"), (Silo, 001de000-5110-4000-8000-000000000000, \"admin\")} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.2952684Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000000, lookup_type: ById(001de000-5110-4000-8000-000000000000) }, key: fd9bcc1f-d9f2-460e-be4c-0cf005d33830, lookup_type: ById(fd9bcc1f-d9f2-460e-be4c-0cf005d33830) }","action":"CreateChild","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.295343614Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000000, lookup_type: ById(001de000-5110-4000-8000-000000000000) }, key: fd9bcc1f-d9f2-460e-be4c-0cf005d33830, lookup_type: ById(fd9bcc1f-d9f2-460e-be4c-0cf005d33830) }","action":"CreateChild","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.295389637Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"fd9bcc1f-d9f2-460e-be4c-0cf005d33830","resource_type":"Project","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.295437859Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.295467401Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.296069733Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.297778625Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-5110-4000-8000-000000000000","resource_type":"Silo","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.298887564Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.298931436Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.298963328Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"loading roles","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.313578773Z","hostname":"ip-10-150-1-168","pid":22742,"resource_id":"001de000-1334-4000-8000-000000000000","resource_type":"Fleet","actor":"Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. }"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.313668958Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.31371115Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.314337474Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.321878339Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {(Fleet, 001de000-1334-4000-8000-000000000000, \"admin\"), (Silo, 001de000-5110-4000-8000-000000000000, \"admin\")} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.327191104Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Project { parent: Silo { parent: Fleet, key: 001de000-5110-4000-8000-000000000000, lookup_type: ById(001de000-5110-4000-8000-000000000000) }, key: fd9bcc1f-d9f2-460e-be4c-0cf005d33830, lookup_type: ById(fd9bcc1f-d9f2-460e-be4c-0cf005d33830) }","action":"CreateChild","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.327292029Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.327336882Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.327807777Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"authorize begin","v":0,"name":"test_insert_sequential_ip_allocation","level":10,"time":"2024-02-14T20:43:15.384278389Z","hostname":"ip-10-150-1-168","pid":22742,"resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"} {"msg":"roles","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.384369054Z","hostname":"ip-10-150-1-168","pid":22742,"roles":"RoleSet { roles: {} }"} {"msg":"authorize result","v":0,"name":"test_insert_sequential_ip_allocation","level":20,"time":"2024-02-14T20:43:15.385376268Z","hostname":"ip-10-150-1-168","pid":22742,"result":"Ok(())","resource":"Database","action":"Query","actor":"Some(Actor::SiloUser { silo_user_id: 001de000-05e4-4000-8000-000000004007, silo_id: 001de000-5110-4000-8000-000000000000, .. })"}