# Auto-generated by lucicfg.
# Do not modify manually.
#
# For the schema of this file, see RealmsCfg message:
#   https://luci-config.appspot.com/schemas/projects:realms.cfg

realms {
  name: "@root"
  bindings {
    role: "role/buildbucket.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/configs.developer"
    principals: "group:googlers"
  }
  bindings {
    role: "role/configs.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/swarming.poolOwner"
    principals: "group:mdb/gerritcodereview-eng"
  }
  bindings {
    role: "role/swarming.poolUser"
    principals: "group:mdb/gerritcodereview-eng"
  }
  bindings {
    role: "role/swarming.poolViewer"
    principals: "group:googlers"
  }
  bindings {
    role: "role/swarming.taskTriggerer"
    principals: "group:mdb/gerritcodereview-eng"
  }
}
realms {
  name: "ci"
}
realms {
  name: "pools/ci"
}
realms {
  name: "pools/try"
  bindings {
    role: "role/swarming.poolUser"
    principals: "group:mdb/chrome-ops-source"
  }
}
realms {
  name: "prod"
}
realms {
  name: "try"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:gerrit-luci-try-builder@gerritcodereview-ci.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/swarming.taskTriggerer"
    principals: "group:mdb/chrome-ops-source"
  }
}
