v1alpha1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Feb 8, 2024 License: Apache-2.0 Imports: 4 Imported by: 3

Documentation

Overview

+k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:defaulter-gen=TypeMeta +groupName=authentication.open-cluster-management.io

Package v1alpha1 contains API Schema definitions for the authentication.open-cluster-management.io v1alpha1 API group +kubebuilder:object:generate=true +groupName=authentication.open-cluster-management.io

Index

Constants

View Source
const (
	ConditionTypeSecretCreated string = "SecretCreated"
	ConditionTypeTokenReported string = "TokenReported"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "authentication.open-cluster-management.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

	// SchemeGroupVersion is an alias to GroupVersion
	// used by the generated clients
	SchemeGroupVersion = GroupVersion
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Types

type ManagedServiceAccount

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

	Spec   ManagedServiceAccountSpec   `json:"spec,omitempty"`
	Status ManagedServiceAccountStatus `json:"status,omitempty"`
}

+genclient ManagedServiceAccount is the Schema for the managedserviceaccounts API

func (*ManagedServiceAccount) DeepCopy

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

func (*ManagedServiceAccount) DeepCopyInto

func (in *ManagedServiceAccount) DeepCopyInto(out *ManagedServiceAccount)

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

func (*ManagedServiceAccount) DeepCopyObject

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

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

type ManagedServiceAccountList

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

ManagedServiceAccountList contains a list of ManagedServiceAccount

func (*ManagedServiceAccountList) DeepCopy

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

func (*ManagedServiceAccountList) DeepCopyInto

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

func (*ManagedServiceAccountList) DeepCopyObject

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

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

type ManagedServiceAccountRotation

type ManagedServiceAccountRotation struct {
	// Enabled prescribes whether the ServiceAccount token will
	// be rotated from the upstream
	// +optional
	// +kubebuilder:default=true
	Enabled bool `json:"enabled"`
	// Validity is the duration for which the signed ServiceAccount token is valid.
	// +optional
	// +kubebuilder:default="8640h0m0s"
	Validity metav1.Duration `json:"validity"`
}

func (*ManagedServiceAccountRotation) DeepCopy

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

func (*ManagedServiceAccountRotation) DeepCopyInto

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

type ManagedServiceAccountSpec

type ManagedServiceAccountSpec struct {
	// Rotation is the policy for rotation the credentials.
	Rotation ManagedServiceAccountRotation `json:"rotation"`

	// ttlSecondsAfterCreation limits the lifetime of a ManagedServiceAccount.
	// If the ttlSecondsAfterCreation field is set, the ManagedServiceAccount will be
	// automatically deleted regardless of the ManagedServiceAccount's status.
	// When the ManagedServiceAccount is deleted, its lifecycle guarantees
	// (e.g. finalizers) will be honored. If this field is unset, the ManagedServiceAccount
	// won't be automatically deleted. If this field is set to zero, the
	// ManagedServiceAccount becomes eligible for deletion immediately after its creation.
	// In order to use ttlSecondsAfterCreation, the EphemeralIdentity feature gate must be enabled.
	// +optional
	//+kubebuilder:validation:ExclusiveMinimum=true
	//+kubebuilder:validation:Minimum=0
	TTLSecondsAfterCreation *int32 `json:"ttlSecondsAfterCreation,omitempty"`
}

ManagedServiceAccountSpec defines the desired state of ManagedServiceAccount

func (*ManagedServiceAccountSpec) DeepCopy

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

func (*ManagedServiceAccountSpec) DeepCopyInto

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

type ManagedServiceAccountStatus

type ManagedServiceAccountStatus struct {
	// Conditions is the condition list.
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// ExpirationTimestamp is the time when the token will expire.
	// +optional
	ExpirationTimestamp *metav1.Time `json:"expirationTimestamp,omitempty"`
	// TokenSecretRef is a reference to the corresponding ServiceAccount's Secret, which stores
	// the CA certficate and token from the managed cluster.
	TokenSecretRef *SecretRef `json:"tokenSecretRef,omitempty"`
}

ManagedServiceAccountStatus defines the observed state of ManagedServiceAccount

func (*ManagedServiceAccountStatus) DeepCopy

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

func (*ManagedServiceAccountStatus) DeepCopyInto

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

type ProjectionType

type ProjectionType string
const (
	ProjectionTypeNone   ProjectionType = "None"
	ProjectionTypeSecret ProjectionType = "Secret"
)

type SecretRef

type SecretRef struct {
	// Name is the name of the referenced secret.
	// +required
	Name string `json:"name"`
	// LastRefreshTimestamp is the timestamp indicating when the token in the Secret
	// is refreshed.
	// +required
	LastRefreshTimestamp metav1.Time `json:"lastRefreshTimestamp"`
}

func (*SecretRef) DeepCopy

func (in *SecretRef) DeepCopy() *SecretRef

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

func (*SecretRef) DeepCopyInto

func (in *SecretRef) DeepCopyInto(out *SecretRef)

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

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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