
// This file was autogenerated by go-to-protobuf. Do not edit it manually!

syntax = "proto2";

package github.com.akuity.kargo.api.rbac.v1alpha1;

import "k8s.io/api/core/v1/generated.proto";
import "k8s.io/api/rbac/v1/generated.proto";
import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";

// Package-wide variables from generator "generated".
option go_package = "github.com/akuity/kargo/api/rbac/v1alpha1";

message Claim {
  optional string name = 1;

  repeated string values = 2;
}

message ResourceDetails {
  optional string resourceType = 1;

  optional string resourceName = 2;

  repeated string verbs = 3;
}

// +kubebuilder:object:root=true
message Role {
  optional .k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;

  optional bool kargoManaged = 2;

  repeated Claim claims = 7;

  repeated .k8s.io.api.rbac.v1.PolicyRule rules = 6;
}

// +kubebuilder:object:root=true
message RoleResources {
  optional .k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;

  optional .k8s.io.api.core.v1.ServiceAccount serviceAccount = 2;

  repeated .k8s.io.api.rbac.v1.Role roles = 3;

  repeated .k8s.io.api.rbac.v1.RoleBinding roleBindings = 4;
}

