Documentation ¶
Overview ¶
Package v1 is the v1 version of the API.
Index ¶
- Constants
- Variables
- func DeepCopy_v1_ProjectLimitBySelector(in interface{}, out interface{}, c *conversion.Cloner) error
- func DeepCopy_v1_ProjectRequestLimitConfig(in interface{}, out interface{}, c *conversion.Cloner) error
- func RegisterDeepCopies(scheme *runtime.Scheme) error
- type ProjectLimitBySelector
- type ProjectRequestLimitConfig
Constants ¶
View Source
const ( GroupName = "requestlimit.project.openshift.io" LegacyGroupName = "" )
Variables ¶
View Source
var ( SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} LegacySchemeGroupVersion = schema.GroupVersion{Group: LegacyGroupName, Version: "v1"} LegacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes) AddToSchemeInCoreGroup = LegacySchemeBuilder.AddToScheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func DeepCopy_v1_ProjectLimitBySelector ¶
func DeepCopy_v1_ProjectLimitBySelector(in interface{}, out interface{}, c *conversion.Cloner) error
DeepCopy_v1_ProjectLimitBySelector is an autogenerated deepcopy function.
func DeepCopy_v1_ProjectRequestLimitConfig ¶
func DeepCopy_v1_ProjectRequestLimitConfig(in interface{}, out interface{}, c *conversion.Cloner) error
DeepCopy_v1_ProjectRequestLimitConfig is an autogenerated deepcopy function.
func RegisterDeepCopies ¶
RegisterDeepCopies adds deep-copy functions to the given scheme. Public to allow building arbitrary schemes.
Types ¶
type ProjectLimitBySelector ¶
type ProjectLimitBySelector struct { // Selector is a user label selector. An empty selector selects everything. Selector map[string]string `json:"selector" description:"user label selector"` // MaxProjects is the number of projects allowed for this class of users. If MaxProjects is nil, // there is no limit to the number of projects users can request. An unlimited number of projects // is useful in the case a limit is specified as the default for all users and only users with a // specific set of labels should be allowed unlimited project creation. MaxProjects *int `json:"maxProjects,omitempty" description:"maximum number of projects, unlimited if nil"` }
ProjectLimitBySelector specifies the maximum number of projects allowed for a given user label selector
func (ProjectLimitBySelector) SwaggerDoc ¶ added in v1.1.4
func (ProjectLimitBySelector) SwaggerDoc() map[string]string
type ProjectRequestLimitConfig ¶
type ProjectRequestLimitConfig struct { metav1.TypeMeta `json:",inline"` // Limits are the project request limits Limits []ProjectLimitBySelector `json:"limits" description:"project request limits"` // MaxProjectsForSystemUsers controls how many projects a certificate user may have. Certificate // users do not have any labels associated with them for more fine grained control MaxProjectsForSystemUsers *int `json:"maxProjectsForSystemUsers"` // MaxProjectsForServiceAccounts controls how many projects a service account may have. Service // accounts can't create projects by default, but if they are allowed to create projects, you cannot // trust any labels placed on them since project editors can manipulate those labels MaxProjectsForServiceAccounts *int `json:"maxProjectsForServiceAccounts"` }
ProjectRequestLimitConfig is the configuration for the project request limit plug-in It contains an ordered list of limits based on user label selectors. Selectors will be checked in order and the first one that applies will be used as the limit.
func (ProjectRequestLimitConfig) SwaggerDoc ¶ added in v1.1.4
func (ProjectRequestLimitConfig) SwaggerDoc() map[string]string
Click to show internal directories.
Click to hide internal directories.