v1alpha1

package
v0.0.0-...-c7aeb27 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 30, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

+groupName=bulward.io

Index

Constants

View Source
const (
	OrganizationRoleTemplateTerminatingReason = "Deleting"
)
View Source
const (
	ProjectRoleTemplateTerminatingReason = "Deleting"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "bulward.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type BindingType

type BindingType string

+kubebuilder:validation:Enum=Owners;Everyone

const (
	BindToOwners   BindingType = "Owners"
	BindToEveryone BindingType = "Everyone"
)

type ConditionStatus

type ConditionStatus string

ConditionStatus represents a condition's status. +kubebuilder:validation:True;False;Unknown

const (
	// ConditionTrue represents the fact that a given condition is true
	ConditionTrue ConditionStatus = "True"

	// ConditionFalse represents the fact that a given condition is false
	ConditionFalse ConditionStatus = "False"

	// ConditionUnknown represents the fact that a given condition is unknown
	ConditionUnknown ConditionStatus = "Unknown"
)

These are valid condition statuses. "ConditionTrue" means a resource is in the condition; "ConditionFalse" means a resource is not in the condition; "ConditionUnknown" means Kubernetes can't decide if a resource is in the condition or not.

type ObjectReference

type ObjectReference struct {
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

ObjectReference describes the link to another object in the same namespace.

func (*ObjectReference) DeepCopy

func (in *ObjectReference) DeepCopy() *ObjectReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReference.

func (*ObjectReference) DeepCopyInto

func (in *ObjectReference) DeepCopyInto(out *ObjectReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrganizationRoleTemplate

type OrganizationRoleTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   OrganizationRoleTemplateSpec   `json:"spec,omitempty"`
	Status OrganizationRoleTemplateStatus `json:"status,omitempty"`
}

OrganizationRoleTemplate is internal representation for OrganizationRoleTemplate in Bulward. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Display Name",type="string",JSONPath=".spec.metadata.displayName" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster

func (*OrganizationRoleTemplate) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationRoleTemplate.

func (*OrganizationRoleTemplate) DeepCopyInto

func (in *OrganizationRoleTemplate) DeepCopyInto(out *OrganizationRoleTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*OrganizationRoleTemplate) DeepCopyObject

func (in *OrganizationRoleTemplate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*OrganizationRoleTemplate) HasBinding

func (s *OrganizationRoleTemplate) HasBinding(bindTo BindingType) bool

func (*OrganizationRoleTemplate) HasScope

func (s *OrganizationRoleTemplate) HasScope(organizationRoleScope RoleTemplateScope) bool

func (*OrganizationRoleTemplate) IsReady

func (s *OrganizationRoleTemplate) IsReady() bool

IsReady returns if the OrganizationRoleTemplate is ready.

type OrganizationRoleTemplateCondition

type OrganizationRoleTemplateCondition struct {
	// Type is the type of the OrganizationRoleTemplate condition, currently ('Ready').
	Type OrganizationRoleTemplateConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

OrganizationRoleTemplateCondition contains details for the current condition of this OrganizationRoleTemplate.

func (*OrganizationRoleTemplateCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationRoleTemplateCondition.

func (*OrganizationRoleTemplateCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrganizationRoleTemplateConditionType

type OrganizationRoleTemplateConditionType string

OrganizationRoleTemplateConditionType represents a OrganizationRoleTemplateCondition value. +kubebuilder:validation:Ready

const (
	// OrganizationRoleTemplateReady represents a OrganizationRoleTemplate condition is in ready state.
	OrganizationRoleTemplateReady OrganizationRoleTemplateConditionType = "Ready"
)

type OrganizationRoleTemplateList

type OrganizationRoleTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []OrganizationRoleTemplate `json:"items"`
}

OrganizationRoleTemplateList contains a list of OrganizationRoleTemplate. +kubebuilder:object:root=true

func (*OrganizationRoleTemplateList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationRoleTemplateList.

func (*OrganizationRoleTemplateList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*OrganizationRoleTemplateList) DeepCopyObject

func (in *OrganizationRoleTemplateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type OrganizationRoleTemplateMetadata

type OrganizationRoleTemplateMetadata struct {
	// DisplayName is the human-readable name of this OrganizationRoleTemplate.
	// +kubebuilder:validation:MinLength=1
	DisplayName string `json:"displayName"`
	// Description is the long and detailed description of the OrganizationRoleTemplate.
	// +kubebuilder:validation:MinLength=1
	Description string `json:"description"`
}

OrganizationRoleTemplateMetadata contains the metadata of the OrganizationRoleTemplate.

func (*OrganizationRoleTemplateMetadata) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationRoleTemplateMetadata.

func (*OrganizationRoleTemplateMetadata) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrganizationRoleTemplatePhaseType

type OrganizationRoleTemplatePhaseType string

OrganizationRoleTemplatePhaseType represents all conditions as a single string for printing by using kubectl commands. +kubebuilder:validation:Ready;NotReady;Unknown;Terminating

const (
	OrganizationRoleTemplatePhaseReady       OrganizationRoleTemplatePhaseType = "Ready"
	OrganizationRoleTemplatePhaseNotReady    OrganizationRoleTemplatePhaseType = "NotReady"
	OrganizationRoleTemplatePhaseUnknown     OrganizationRoleTemplatePhaseType = "Unknown"
	OrganizationRoleTemplatePhaseTerminating OrganizationRoleTemplatePhaseType = "Terminating"
)

Values of OrganizationRoleTemplatePhaseType.

type OrganizationRoleTemplateSpec

type OrganizationRoleTemplateSpec struct {
	// Metadata	contains additional human readable OrganizationRoleTemplate details.
	Metadata *OrganizationRoleTemplateMetadata `json:"metadata,omitempty"`
	// Scopes defines the scopes of this OrganizationRoleTemplate.
	// +kubebuilder:validation:MinItems=1
	Scopes []RoleTemplateScope `json:"scopes"`
	// BindTo defines the member types of the Organization that this OrganizationRoleTemplate will be bound to.
	BindTo []BindingType `json:"bindTo,omitempty"`
	// Rules defines the Role that this OrganizationRoleTemplate refers to.
	Rules []rbacv1.PolicyRule `json:"rules"`
}

OrganizationRoleTemplateSpec describes the desired state of OrganizationRoleTemplate.

func (*OrganizationRoleTemplateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationRoleTemplateSpec.

func (*OrganizationRoleTemplateSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrganizationRoleTemplateStatus

type OrganizationRoleTemplateStatus struct {
	// ObservedGeneration is the most recent generation observed for this OrganizationRoleTemplate by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a OrganizationRoleTemplate's current state.
	Conditions []OrganizationRoleTemplateCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase OrganizationRoleTemplatePhaseType `json:"phase,omitempty"`
	// Targets holds different targets(Organization, Project) that this OrganizationRoleTemplate targets to.
	Targets []RoleTemplateTarget `json:"targets,omitempty"`
}

OrganizationRoleTemplateStatus represents the observed state of OrganizationRoleTemplate.

func (*OrganizationRoleTemplateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationRoleTemplateStatus.

func (*OrganizationRoleTemplateStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*OrganizationRoleTemplateStatus) GetCondition

GetCondition returns the Condition of the given condition type, if it exists.

func (*OrganizationRoleTemplateStatus) SetCondition

SetCondition replaces or adds the given condition.

type ProjectRoleTemplate

type ProjectRoleTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ProjectRoleTemplateSpec   `json:"spec,omitempty"`
	Status ProjectRoleTemplateStatus `json:"status,omitempty"`
}

ProjectRoleTemplate is used by Organization Owners to manage the same Role across multiple Projects in Bulward. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Display Name",type="string",JSONPath=".spec.metadata.displayName" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*ProjectRoleTemplate) DeepCopy

func (in *ProjectRoleTemplate) DeepCopy() *ProjectRoleTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectRoleTemplate.

func (*ProjectRoleTemplate) DeepCopyInto

func (in *ProjectRoleTemplate) DeepCopyInto(out *ProjectRoleTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectRoleTemplate) DeepCopyObject

func (in *ProjectRoleTemplate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ProjectRoleTemplate) HasBinding

func (s *ProjectRoleTemplate) HasBinding(bindTo BindingType) bool

func (*ProjectRoleTemplate) IsReady

func (s *ProjectRoleTemplate) IsReady() bool

IsReady returns if the ProjectRoleTemplate is ready.

type ProjectRoleTemplateCondition

type ProjectRoleTemplateCondition struct {
	// Type is the type of the ProjectRoleTemplate condition, currently ('Ready').
	Type ProjectRoleTemplateConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

ProjectRoleTemplateCondition contains details for the current condition of this ProjectRoleTemplate.

func (*ProjectRoleTemplateCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectRoleTemplateCondition.

func (*ProjectRoleTemplateCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectRoleTemplateConditionType

type ProjectRoleTemplateConditionType string

ProjectRoleTemplateConditionType represents a ProjectRoleTemplateCondition value. +kubebuilder:validation:Ready

const (
	// ProjectRoleTemplateReady represents a ProjectRoleTemplate condition is in ready state.
	ProjectRoleTemplateReady ProjectRoleTemplateConditionType = "Ready"
)

type ProjectRoleTemplateList

type ProjectRoleTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ProjectRoleTemplate `json:"items"`
}

ProjectRoleTemplateList contains a list of ProjectRoleTemplate. +kubebuilder:object:root=true

func (*ProjectRoleTemplateList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectRoleTemplateList.

func (*ProjectRoleTemplateList) DeepCopyInto

func (in *ProjectRoleTemplateList) DeepCopyInto(out *ProjectRoleTemplateList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectRoleTemplateList) DeepCopyObject

func (in *ProjectRoleTemplateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ProjectRoleTemplateMetadata

type ProjectRoleTemplateMetadata struct {
	// DisplayName is the human-readable name of this ProjectRoleTemplate.
	// +kubebuilder:validation:MinLength=1
	DisplayName string `json:"displayName"`
	// Description is the long and detailed description of the ProjectRoleTemplate.
	// +kubebuilder:validation:MinLength=1
	Description string `json:"description"`
}

ProjectRoleTemplateMetadata contains the metadata of the ProjectRoleTemplate.

func (*ProjectRoleTemplateMetadata) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectRoleTemplateMetadata.

func (*ProjectRoleTemplateMetadata) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectRoleTemplatePhaseType

type ProjectRoleTemplatePhaseType string

ProjectRoleTemplatePhaseType represents all conditions as a single string for printing by using kubectl commands. +kubebuilder:validation:Ready;NotReady;Unknown;Terminating

const (
	ProjectRoleTemplatePhaseReady       ProjectRoleTemplatePhaseType = "Ready"
	ProjectRoleTemplatePhaseNotReady    ProjectRoleTemplatePhaseType = "NotReady"
	ProjectRoleTemplatePhaseUnknown     ProjectRoleTemplatePhaseType = "Unknown"
	ProjectRoleTemplatePhaseTerminating ProjectRoleTemplatePhaseType = "Terminating"
)

Values of ProjectRoleTemplatePhaseType.

type ProjectRoleTemplateSpec

type ProjectRoleTemplateSpec struct {
	// Metadata contains additional human readable ProjectRoleTemplate details.
	Metadata *ProjectRoleTemplateMetadata `json:"metadata,omitempty"`
	// BindTo defines the member types of the Project that this ProjectRoleTemplate will be bound to.
	BindTo []BindingType `json:"bindTo,omitempty"`
	// ProjectSelector selects applicable target Projects.
	ProjectSelector *metav1.LabelSelector `json:"projectSelector,omitempty"`
	// Rules creates RBAC Roles that will be managed by this ProjectRoleTemplate.
	Rules []rbacv1.PolicyRule `json:"rules"`
}

ProjectRoleTemplateSpec describes the desired state of ProjectRoleTemplate.

func (*ProjectRoleTemplateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectRoleTemplateSpec.

func (*ProjectRoleTemplateSpec) DeepCopyInto

func (in *ProjectRoleTemplateSpec) DeepCopyInto(out *ProjectRoleTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectRoleTemplateStatus

type ProjectRoleTemplateStatus struct {
	// ObservedGeneration is the most recent generation observed for this ProjectRoleTemplate by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a ProjectRoleTemplate's current state.
	Conditions []ProjectRoleTemplateCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase ProjectRoleTemplatePhaseType `json:"phase,omitempty"`
	// Targets holds different targets(Project, Project) that this ProjectRoleTemplate targets to.
	Targets []RoleTemplateTarget `json:"targets,omitempty"`
}

ProjectRoleTemplateStatus represents the observed state of ProjectRoleTemplate.

func (*ProjectRoleTemplateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectRoleTemplateStatus.

func (*ProjectRoleTemplateStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectRoleTemplateStatus) GetCondition

GetCondition returns the Condition of the given condition type, if it exists.

func (*ProjectRoleTemplateStatus) SetCondition

func (s *ProjectRoleTemplateStatus) SetCondition(condition ProjectRoleTemplateCondition)

SetCondition replaces or adds the given condition.

type RoleTemplateScope

type RoleTemplateScope string

+kubebuilder:validation:Enum=Organization;Project

const (
	RoleTemplateScopeOrganization RoleTemplateScope = "Organization"
	RoleTemplateScopeProject      RoleTemplateScope = "Project"
)

type RoleTemplateTarget

type RoleTemplateTarget struct {
	// Kind of target being referenced. Available values can be "Organization", "Project".
	// +kubebuilder:validation:Enum=Organization;Project
	Kind string `json:"kind"`
	// APIGroup holds the API group of the referenced target, default "bulward.io".
	// +kubebuilder:default=bulward.io
	APIGroup string `json:"apiGroup,omitempty"`
	// Name of the target being referenced.
	Name string `json:"name"`
	// ObservedGeneration is the most recent generation observed for this Target by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

func (*RoleTemplateTarget) DeepCopy

func (in *RoleTemplateTarget) DeepCopy() *RoleTemplateTarget

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleTemplateTarget.

func (*RoleTemplateTarget) DeepCopyInto

func (in *RoleTemplateTarget) DeepCopyInto(out *RoleTemplateTarget)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL