# 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.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/configs.validator"
    principals: "group:project-pigweed-config-validation"
  }
  bindings {
    role: "role/cq.committer"
    principals: "group:project-pigweed-tryjob-access"
  }
  bindings {
    role: "role/logdog.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/logdog.writer"
    principals: "group:project-pigweed-logdog-writers"
  }
  bindings {
    role: "role/scheduler.owner"
    principals: "group:project-pigweed-admins"
  }
  bindings {
    role: "role/scheduler.reader"
    principals: "group:all"
  }
  bindings {
    role: "role/swarming.poolOwner"
    principals: "group:project-pigweed-admins"
  }
  bindings {
    role: "role/swarming.poolViewer"
    principals: "group:all"
  }
}
realms {
  name: "ci"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:pigweed-ci-builder@pigweed.google.com.iam.gserviceaccount.com"
    principals: "user:pigweed-doc-builder@pigweed.google.com.iam.gserviceaccount.com"
    principals: "user:pigweed-kythe@pigweed.google.com.iam.gserviceaccount.com"
    principals: "user:pigweed-roller@pigweed.google.com.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/buildbucket.triggerer"
    principals: "user:luci-scheduler@appspot.gserviceaccount.com"
    principals: "user:pigweed-ci-builder@pigweed.google.com.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/scheduler.triggerer"
    principals: "user:luci-scheduler@appspot.gserviceaccount.com"
    principals: "user:pigweed-ci-builder@pigweed.google.com.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/swarming.taskTriggerer"
    principals: "group:project-pigweed-admins"
  }
}
realms {
  name: "pools/ci"
  bindings {
    role: "role/swarming.poolUser"
    principals: "group:project-pigweed-admins"
    principals: "group:project-pigweed-committers"
  }
}
realms {
  name: "pools/try"
  bindings {
    role: "role/swarming.poolUser"
    principals: "group:project-pigweed-admins"
    principals: "group:project-pigweed-led-users"
    principals: "group:project-pigweed-try-task-accounts"
  }
}
realms {
  name: "roll"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:auto-submit@pigweed.google.com.iam.gserviceaccount.com"
    principals: "user:pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com"
    principals: "user:pigweed-roller@pigweed.google.com.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/buildbucket.triggerer"
    principals: "group:project-pigweed-committers"
    principals: "user:luci-scheduler@appspot.gserviceaccount.com"
  }
  bindings {
    role: "role/scheduler.triggerer"
    principals: "group:project-pigweed-committers"
    principals: "user:luci-scheduler@appspot.gserviceaccount.com"
  }
  bindings {
    role: "role/swarming.taskTriggerer"
    principals: "group:project-pigweed-admins"
    principals: "group:project-pigweed-committers"
  }
}
realms {
  name: "try"
  bindings {
    role: "role/buildbucket.builderServiceAccount"
    principals: "user:pigweed-try-builder@pigweed.google.com.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/buildbucket.triggerer"
    principals: "group:project-pigweed-tryjob-access"
    principals: "user:pigweed-try-builder@pigweed.google.com.iam.gserviceaccount.com"
  }
  bindings {
    role: "role/swarming.taskTriggerer"
    principals: "group:project-pigweed-admins"
    principals: "group:project-pigweed-led-users"
    principals: "group:project-pigweed-try-task-accounts"
  }
}
