...

Text file src/github.com/openshift/api/quota/v1/generated.proto

Documentation: github.com/openshift/api/quota/v1

     1
     2// This file was autogenerated by go-to-protobuf. Do not edit it manually!
     3
     4syntax = "proto2";
     5
     6package github.com.openshift.api.quota.v1;
     7
     8import "k8s.io/api/core/v1/generated.proto";
     9import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
    10import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
    11
    12// Package-wide variables from generator "generated".
    13option go_package = "github.com/openshift/api/quota/v1";
    14
    15// AppliedClusterResourceQuota mirrors ClusterResourceQuota at a project scope, for projection
    16// into a project.  It allows a project-admin to know which ClusterResourceQuotas are applied to
    17// his project and their associated usage.
    18//
    19// Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
    20// +openshift:compatibility-gen:level=1
    21message AppliedClusterResourceQuota {
    22  // metadata is the standard object's metadata.
    23  // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    24  optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
    25
    26  // Spec defines the desired quota
    27  optional ClusterResourceQuotaSpec spec = 2;
    28
    29  // Status defines the actual enforced quota and its current usage
    30  optional ClusterResourceQuotaStatus status = 3;
    31}
    32
    33// AppliedClusterResourceQuotaList is a collection of AppliedClusterResourceQuotas
    34//
    35// Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
    36// +openshift:compatibility-gen:level=1
    37message AppliedClusterResourceQuotaList {
    38  // metadata is the standard list's metadata.
    39  // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    40  optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
    41
    42  // Items is a list of AppliedClusterResourceQuota
    43  repeated AppliedClusterResourceQuota items = 2;
    44}
    45
    46// ClusterResourceQuota mirrors ResourceQuota at a cluster scope.  This object is easily convertible to
    47// synthetic ResourceQuota object to allow quota evaluation re-use.
    48//
    49// Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
    50// +openshift:compatibility-gen:level=1
    51message ClusterResourceQuota {
    52  // metadata is the standard object's metadata.
    53  // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    54  optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
    55
    56  // Spec defines the desired quota
    57  optional ClusterResourceQuotaSpec spec = 2;
    58
    59  // Status defines the actual enforced quota and its current usage
    60  optional ClusterResourceQuotaStatus status = 3;
    61}
    62
    63// ClusterResourceQuotaList is a collection of ClusterResourceQuotas
    64//
    65// Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
    66// +openshift:compatibility-gen:level=1
    67message ClusterResourceQuotaList {
    68  // metadata is the standard list's metadata.
    69  // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    70  optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
    71
    72  // Items is a list of ClusterResourceQuotas
    73  repeated ClusterResourceQuota items = 2;
    74}
    75
    76// ClusterResourceQuotaSelector is used to select projects.  At least one of LabelSelector or AnnotationSelector
    77// must present.  If only one is present, it is the only selection criteria.  If both are specified,
    78// the project must match both restrictions.
    79message ClusterResourceQuotaSelector {
    80  // LabelSelector is used to select projects by label.
    81  // +optional
    82  // +nullable
    83  optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labels = 1;
    84
    85  // AnnotationSelector is used to select projects by annotation.
    86  // +optional
    87  // +nullable
    88  map<string, string> annotations = 2;
    89}
    90
    91// ClusterResourceQuotaSpec defines the desired quota restrictions
    92message ClusterResourceQuotaSpec {
    93  // Selector is the selector used to match projects.
    94  // It should only select active projects on the scale of dozens (though it can select
    95  // many more less active projects).  These projects will contend on object creation through
    96  // this resource.
    97  optional ClusterResourceQuotaSelector selector = 1;
    98
    99  // Quota defines the desired quota
   100  optional k8s.io.api.core.v1.ResourceQuotaSpec quota = 2;
   101}
   102
   103// ClusterResourceQuotaStatus defines the actual enforced quota and its current usage
   104message ClusterResourceQuotaStatus {
   105  // Total defines the actual enforced quota and its current usage across all projects
   106  optional k8s.io.api.core.v1.ResourceQuotaStatus total = 1;
   107
   108  // Namespaces slices the usage by project.  This division allows for quick resolution of
   109  // deletion reconciliation inside of a single project without requiring a recalculation
   110  // across all projects.  This can be used to pull the deltas for a given project.
   111  // +optional
   112  // +nullable
   113  repeated ResourceQuotaStatusByNamespace namespaces = 2;
   114}
   115
   116// ResourceQuotaStatusByNamespace gives status for a particular project
   117message ResourceQuotaStatusByNamespace {
   118  // Namespace the project this status applies to
   119  optional string namespace = 1;
   120
   121  // Status indicates how many resources have been consumed by this project
   122  optional k8s.io.api.core.v1.ResourceQuotaStatus status = 2;
   123}
   124

View as plain text