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

realms {
  name: "@root"
  bindings {
    role: "role/buildbucket.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/configs.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/logdog.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/logdog.writer"
    principals: "group:luci-logdog-chromium-writers"
  }
  bindings {
    role: "role/scheduler.owner"
    principals: "group:project-gn-committers"
  }
  bindings {
    role: "role/scheduler.reader"
    principals: "group:all"
  }
}
realms {
  name: "ci"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:gn-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
  }
}
realms {
  name: "ci.shadow"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:gn-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/buildbucket.creator"
    principals: "group:project-gn-committers"
  }
}
realms {
  name: "try"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:gn-try-builder@chops-service-accounts.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/buildbucket.triggerer"
    principals: "group:project-gn-tryjob-access"
    principals: "group:service-account-cq"
  }
  bindings {
    role: "role/swarming.taskTriggerer"
    principals: "group:flex-try-led-users"
  }
}
realms {
  name: "try.shadow"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:gn-try-builder@chops-service-accounts.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/buildbucket.creator"
    principals: "group:project-gn-committers"
  }
}
