v1alpha1

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2020 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group +kubebuilder:object:generate=true +groupName=operator.kubecarrier.io

Index

Constants

View Source
const (
	APIServerTerminatingReason = "Deleting"
)
View Source
const (
	CatapultTerminatingReason = "Deleting"
)
View Source
const (
	ElevatorTerminatingReason = "Deleting"
)
View Source
const (
	FerryTerminatingReason string = "Terminating"
)
View Source
const (
	KubeCarrierTerminatingReason = "Deleting"
)

Variables

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

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

	Spec   APIServerSpec   `json:"spec,omitempty"`
	Status APIServerStatus `json:"status,omitempty"`
}

APIServer manages the deployment of the KubeCarrier central API server. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:categories=all +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*APIServer) DeepCopy

func (in *APIServer) DeepCopy() *APIServer

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

func (*APIServer) DeepCopyInto

func (in *APIServer) DeepCopyInto(out *APIServer)

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

func (*APIServer) DeepCopyObject

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

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

func (*APIServer) IsReady

func (s *APIServer) IsReady() bool

IsReady returns if the APIServer is ready.

func (*APIServer) SetReadyCondition

func (s *APIServer) SetReadyCondition() bool

func (*APIServer) SetTerminatingCondition

func (s *APIServer) SetTerminatingCondition() bool

func (*APIServer) SetUnReadyCondition

func (s *APIServer) SetUnReadyCondition() bool

type APIServerCondition

type APIServerCondition struct {
	// Type is the type of the APIServer condition, currently ('Ready').
	Type APIServerConditionType `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"`
}

APIServerCondition contains details for the current condition of this APIServer.

func (*APIServerCondition) DeepCopy

func (in *APIServerCondition) DeepCopy() *APIServerCondition

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

func (*APIServerCondition) DeepCopyInto

func (in *APIServerCondition) DeepCopyInto(out *APIServerCondition)

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

func (APIServerCondition) True

func (c APIServerCondition) True() bool

True returns whether .Status == "True"

type APIServerConditionType

type APIServerConditionType string

APIServerConditionType represents a APIServerCondition value.

const (
	// APIServerReady represents a APIServer condition is in ready state.
	APIServerReady APIServerConditionType = "Ready"
)

type APIServerList

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

APIServerList contains a list of APIServer

func (*APIServerList) DeepCopy

func (in *APIServerList) DeepCopy() *APIServerList

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

func (*APIServerList) DeepCopyInto

func (in *APIServerList) DeepCopyInto(out *APIServerList)

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

func (*APIServerList) DeepCopyObject

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

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

type APIServerOIDCConfig

type APIServerOIDCConfig struct {
	// IssuerURL is the URL the provider signs ID Tokens as. This will be the "iss"
	// field of all tokens produced by the provider and is used for configuration
	// discovery.
	//
	// The URL is usually the provider's URL without a path, for example
	// "https://accounts.google.com" or "https://login.salesforce.com".
	//
	// The provider must implement configuration discovery.
	// See: https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfig
	IssuerURL string `json:"issuerURL"`

	// ClientID the JWT must be issued for, the "sub" field. This plugin only trusts a single
	// client to ensure the plugin can be used with public providers.
	//
	// The plugin supports the "authorized party" OpenID Connect claim, which allows
	// specialized providers to issue tokens to a client for a different client.
	// See: https://openid.net/specs/openid-connect-core-1_0.html#IDToken
	ClientID string `json:"clientID"`

	// CertificateAuthority references the secret containing issuer's CA in a PEM encoded root certificate of the provider.
	CertificateAuthority ObjectReference `json:"certificateAuthority"`

	// UsernameClaim is the JWT field to use as the user's username.
	// +kubebuilder:default=sub
	// +optional
	UsernameClaim string `json:"usernameClaim"`

	// UsernamePrefix, if specified, causes claims mapping to username to be prefix with
	// the provided value. A value "oidc:" would result in usernames like "oidc:john".
	// +optional
	UsernamePrefix string `json:"usernamePrefix,omitempty"`

	// GroupsClaim, if specified, causes the OIDCAuthenticator to try to populate the user's
	// groups with an ID Token field. If the GroupsClaim field is present in an ID Token the value
	// must be a string or list of strings.
	// +optional
	GroupsClaim string `json:"groupsClaim,omitempty"`

	// GroupsPrefix, if specified, causes claims mapping to group names to be prefixed with the
	// value. A value "oidc:" would result in groups like "oidc:engineering" and "oidc:marketing".
	// +optional
	GroupsPrefix string `json:"groupsPrefix,omitempty"`

	// SupportedSigningAlgs sets the accepted set of JOSE signing algorithms that
	// can be used by the provider to sign tokens.
	//
	// https://tools.ietf.org/html/rfc7518#section-3.1
	//
	// This value defaults to RS256, the value recommended by the OpenID Connect
	// spec:
	//
	// https://openid.net/specs/openid-connect-core-1_0.html#IDTokenValidation
	// +kubebuilder:default=RS256;
	SupportedSigningAlgs []string `json:"supportedSigningAlgs,omitempty"`

	// RequiredClaims, if specified, causes the OIDCAuthenticator to verify that all the
	// required claims key value pairs are present in the ID Token.
	// +optional
	RequiredClaims map[string]string `json:"requiredClaims,omitempty"`
}

func (*APIServerOIDCConfig) DeepCopy

func (in *APIServerOIDCConfig) DeepCopy() *APIServerOIDCConfig

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

func (*APIServerOIDCConfig) DeepCopyInto

func (in *APIServerOIDCConfig) DeepCopyInto(out *APIServerOIDCConfig)

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

type APIServerPhaseType

type APIServerPhaseType string

APIServerPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	APIServerPhaseReady       APIServerPhaseType = "Ready"
	APIServerPhaseNotReady    APIServerPhaseType = "NotReady"
	APIServerPhaseUnknown     APIServerPhaseType = "Unknown"
	APIServerPhaseTerminating APIServerPhaseType = "Terminating"
)

Values of APIServerPhaseType.

type APIServerSpec

type APIServerSpec struct {
	// TLSSecretRef references the TLS certificate and private key for serving the KubeCarrier API.
	// +optional
	TLSSecretRef *ObjectReference `json:"tlsSecretRef,omitempty"`
	// +optional
	// Authentication configuration
	Authentication Authentication `json:"authentication,omitempty"`
	// LogLevel
	// +optional
	LogLevel *int `json:"logLevel,omitempty"`
}

APIServerSpec defines the desired state of APIServer

func (*APIServerSpec) DeepCopy

func (in *APIServerSpec) DeepCopy() *APIServerSpec

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

func (*APIServerSpec) DeepCopyInto

func (in *APIServerSpec) DeepCopyInto(out *APIServerSpec)

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

func (*APIServerSpec) Default

func (a *APIServerSpec) Default() bool

func (*APIServerSpec) SetLogLevel

func (a *APIServerSpec) SetLogLevel(logLevel int)

func (APIServerSpec) Validate

func (a APIServerSpec) Validate() error

type APIServerStatus

type APIServerStatus struct {
	// ObservedGeneration is the most recent generation observed for this APIServer by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a APIServer's current state.
	Conditions []APIServerCondition `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 APIServerPhaseType `json:"phase,omitempty"`
}

APIServerStatus defines the observed state of APIServer

func (*APIServerStatus) DeepCopy

func (in *APIServerStatus) DeepCopy() *APIServerStatus

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

func (*APIServerStatus) DeepCopyInto

func (in *APIServerStatus) DeepCopyInto(out *APIServerStatus)

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

func (*APIServerStatus) GetCondition

func (s *APIServerStatus) GetCondition(t APIServerConditionType) (condition APIServerCondition, exists bool)

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

func (*APIServerStatus) SetCondition

func (s *APIServerStatus) SetCondition(condition APIServerCondition)

SetCondition replaces or adds the given condition.

type Anonymous

type Anonymous struct{}

func (*Anonymous) DeepCopy

func (in *Anonymous) DeepCopy() *Anonymous

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

func (*Anonymous) DeepCopyInto

func (in *Anonymous) DeepCopyInto(out *Anonymous)

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

type Authentication

type Authentication []AuthenticationConfig

func (Authentication) DeepCopy

func (in Authentication) DeepCopy() Authentication

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

func (Authentication) DeepCopyInto

func (in Authentication) DeepCopyInto(out *Authentication)

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

func (*Authentication) Default

func (a *Authentication) Default() bool

func (Authentication) Validate

func (a Authentication) Validate() error

type AuthenticationConfig

type AuthenticationConfig struct {
	// OIDC specifies OpenID Connect configuration for API Server authentication
	// +optional
	OIDC *APIServerOIDCConfig `json:"oidc,omitempty"`
	// StaticUsers specifies static users configuration for API Server authentication
	// +optional
	StaticUsers *StaticUsers `json:"staticUsers,omitempty"`
	// ServiceAccount specifies whether service account auth provider enabled
	// +optional
	ServiceAccount *ServiceAccount `json:"serviceAccount,omitempty"`
	// Anonymous specifies whether anonymous auth provider enabled
	// +optional
	Anonymous *Anonymous `json:"anonymous,omitempty"`
}

func (*AuthenticationConfig) DeepCopy

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

func (*AuthenticationConfig) DeepCopyInto

func (in *AuthenticationConfig) DeepCopyInto(out *AuthenticationConfig)

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

func (AuthenticationConfig) GetEnabledProvider

func (s AuthenticationConfig) GetEnabledProvider() string

func (AuthenticationConfig) Validate

func (s AuthenticationConfig) Validate() error

type CRDReference

type CRDReference struct {
	Kind    string `json:"kind"`
	Version string `json:"version"`
	Group   string `json:"group"`
	Plural  string `json:"plural"`
}

CRDReference references a CustomResourceDefitition.

func (*CRDReference) DeepCopy

func (in *CRDReference) DeepCopy() *CRDReference

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

func (*CRDReference) DeepCopyInto

func (in *CRDReference) DeepCopyInto(out *CRDReference)

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

type Catapult

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

	Spec   CatapultSpec   `json:"spec,omitempty"`
	Status CatapultStatus `json:"status,omitempty"`
}

Catapult manages the deployment of the Catapult controller manager.

A Catapult instance is started for each CustomResourceDiscovery instance and responsible for reconciling CRD instances across Kubernetes Clusters. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all

func (*Catapult) DeepCopy

func (in *Catapult) DeepCopy() *Catapult

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

func (*Catapult) DeepCopyInto

func (in *Catapult) DeepCopyInto(out *Catapult)

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

func (*Catapult) DeepCopyObject

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

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

func (*Catapult) IsPaused

func (s *Catapult) IsPaused() bool

IsPaused returns if the Catapult is paused.

func (*Catapult) IsReady

func (s *Catapult) IsReady() bool

IsReady returns if the Catapult is ready.

func (*Catapult) SetPausedCondition

func (s *Catapult) SetPausedCondition() bool

func (*Catapult) SetReadyCondition

func (s *Catapult) SetReadyCondition() bool

func (*Catapult) SetTerminatingCondition

func (s *Catapult) SetTerminatingCondition() bool

func (*Catapult) SetUnPausedCondition

func (s *Catapult) SetUnPausedCondition() bool

func (*Catapult) SetUnReadyCondition

func (s *Catapult) SetUnReadyCondition() bool

type CatapultCondition

type CatapultCondition struct {
	// Type is the type of the Catapult condition, currently ('Ready').
	Type CatapultConditionType `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"`
}

CatapultCondition contains details for the current condition of this Catapult.

func (*CatapultCondition) DeepCopy

func (in *CatapultCondition) DeepCopy() *CatapultCondition

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

func (*CatapultCondition) DeepCopyInto

func (in *CatapultCondition) DeepCopyInto(out *CatapultCondition)

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

func (CatapultCondition) True

func (c CatapultCondition) True() bool

True returns whether .Status == "True"

type CatapultConditionType

type CatapultConditionType string

CatapultConditionType represents a CatapultCondition value.

const (
	// CatapultReady represents a Catapult condition is in ready state.
	CatapultReady CatapultConditionType = "Ready"
	// CatapultPaused represents a Catapult condition is in paused state.
	CatapultPaused CatapultConditionType = "Paused"
)

type CatapultList

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

CatapultList contains a list of Catapult. +kubebuilder:object:root=true

func (*CatapultList) DeepCopy

func (in *CatapultList) DeepCopy() *CatapultList

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

func (*CatapultList) DeepCopyInto

func (in *CatapultList) DeepCopyInto(out *CatapultList)

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

func (*CatapultList) DeepCopyObject

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

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

type CatapultPhaseType

type CatapultPhaseType string

CatapultPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	CatapultPhaseReady       CatapultPhaseType = "Ready"
	CatapultPhasePaused      CatapultPhaseType = "Paused"
	CatapultPhaseNotReady    CatapultPhaseType = "NotReady"
	CatapultPhaseUnknown     CatapultPhaseType = "Unknown"
	CatapultPhaseTerminating CatapultPhaseType = "Terminating"
)

Values of CatapultPhaseType.

type CatapultSpec

type CatapultSpec struct {
	// References the CRD in the Management Cluster.
	ManagementClusterCRD CRDReference `json:"managementClusterCRD"`
	// References the CRD in the ServiceCluster.
	ServiceClusterCRD CRDReference `json:"serviceClusterCRD"`
	// References the ServiceCluster object that this object belongs to.
	ServiceCluster ObjectReference `json:"serviceCluster"`
	// WebhookStrategy configs the webhook of the CRD which is registered in the management cluster by this Catapult.
	// There are two possible values for this configuration {None (by default), ServiceCluster}
	// None (by default): Webhook will only check if there is an available ServiceClusterAssignment in the current Namespace.
	// ServiceCluster: Webhook will call webhooks of the CRD in the ServiceCluster with dry-run flag.
	// +kubebuilder:default:=None
	WebhookStrategy corev1alpha1.WebhookStrategyType `json:"webhookStrategy,omitempty"`
	// Paused tell controller to pause reconciliation process and assume that Catapult is ready
	Paused PausedFlagType `json:"paused,omitempty"`
	// LogLevel
	// +optional
	LogLevel *int `json:"logLevel,omitempty"`
}

CatapultSpec defines the desired state of Catapult.

func (*CatapultSpec) DeepCopy

func (in *CatapultSpec) DeepCopy() *CatapultSpec

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

func (*CatapultSpec) DeepCopyInto

func (in *CatapultSpec) DeepCopyInto(out *CatapultSpec)

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

func (*CatapultSpec) SetLogLevel

func (a *CatapultSpec) SetLogLevel(logLevel int)

type CatapultStatus

type CatapultStatus struct {
	// ObservedGeneration is the most recent generation observed for this Catapult by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a Catapult's current state.
	Conditions []CatapultCondition `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 CatapultPhaseType `json:"phase,omitempty"`
}

CatapultStatus defines the observed state of Catapult.

func (*CatapultStatus) DeepCopy

func (in *CatapultStatus) DeepCopy() *CatapultStatus

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

func (*CatapultStatus) DeepCopyInto

func (in *CatapultStatus) DeepCopyInto(out *CatapultStatus)

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

func (*CatapultStatus) GetCondition

func (s *CatapultStatus) GetCondition(t CatapultConditionType) (condition CatapultCondition, exists bool)

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

func (*CatapultStatus) SetCondition

func (s *CatapultStatus) SetCondition(condition CatapultCondition)

SetCondition replaces or adds the given condition.

type ConditionStatus

type ConditionStatus string

ConditionStatus represents a condition's status.

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 Elevator

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

	Spec   ElevatorSpec   `json:"spec,omitempty"`
	Status ElevatorStatus `json:"status,omitempty"`
}

Elevator manages the deployment of the Elevator controller manager.

For each `DerivedCustomResource` a Elevator instance is launched to propagate the derived CRD instance into the Namespace of it's provider. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all

func (*Elevator) DeepCopy

func (in *Elevator) DeepCopy() *Elevator

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

func (*Elevator) DeepCopyInto

func (in *Elevator) DeepCopyInto(out *Elevator)

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

func (*Elevator) DeepCopyObject

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

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

func (*Elevator) IsPaused

func (s *Elevator) IsPaused() bool

IsPaused returns if the Elevator is paused.

func (*Elevator) IsReady

func (s *Elevator) IsReady() bool

IsReady returns if the Elevator is ready.

func (*Elevator) SetPausedCondition

func (s *Elevator) SetPausedCondition() bool

func (*Elevator) SetReadyCondition

func (s *Elevator) SetReadyCondition() bool

func (*Elevator) SetTerminatingCondition

func (s *Elevator) SetTerminatingCondition() bool

func (*Elevator) SetUnPausedCondition

func (s *Elevator) SetUnPausedCondition() bool

func (*Elevator) SetUnReadyCondition

func (s *Elevator) SetUnReadyCondition() bool

type ElevatorCondition

type ElevatorCondition struct {
	// Type is the type of the Elevator condition, currently ('Ready').
	Type ElevatorConditionType `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"`
}

ElevatorCondition contains details for the current condition of this Elevator.

func (*ElevatorCondition) DeepCopy

func (in *ElevatorCondition) DeepCopy() *ElevatorCondition

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

func (*ElevatorCondition) DeepCopyInto

func (in *ElevatorCondition) DeepCopyInto(out *ElevatorCondition)

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

func (ElevatorCondition) True

func (c ElevatorCondition) True() bool

True returns whether .Status == "True"

type ElevatorConditionType

type ElevatorConditionType string

ElevatorConditionType represents a ElevatorCondition value.

const (
	// ElevatorReady represents a Elevator condition is in ready state.
	ElevatorReady ElevatorConditionType = "Ready"
	// ElevatorPaused represents a Elevator condition is in paused state.
	ElevatorPaused ElevatorConditionType = "Paused"
)

type ElevatorList

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

ElevatorList contains a list of Elevator. +kubebuilder:object:root=true

func (*ElevatorList) DeepCopy

func (in *ElevatorList) DeepCopy() *ElevatorList

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

func (*ElevatorList) DeepCopyInto

func (in *ElevatorList) DeepCopyInto(out *ElevatorList)

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

func (*ElevatorList) DeepCopyObject

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

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

type ElevatorPhaseType

type ElevatorPhaseType string

ElevatorPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	ElevatorPhaseReady       ElevatorPhaseType = "Ready"
	ElevatorPhasePaused      ElevatorPhaseType = "Paused"
	ElevatorPhaseNotReady    ElevatorPhaseType = "NotReady"
	ElevatorPhaseUnknown     ElevatorPhaseType = "Unknown"
	ElevatorPhaseTerminating ElevatorPhaseType = "Terminating"
)

Values of ElevatorPhaseType.

type ElevatorSpec

type ElevatorSpec struct {
	// References the provider or internal CRD, that should be created in the provider namespace.
	ProviderCRD CRDReference `json:"providerCRD"`
	// References the public CRD that will be synced into the provider namespace.
	TenantCRD CRDReference `json:"tenantCRD"`
	// References the DerivedCustomResource controlling the Tenant-side CRD.
	DerivedCR ObjectReference `json:"derivedCR"`
	// Paused tell controller to pause reconciliation process and assume that Catapult is ready
	Paused PausedFlagType `json:"paused,omitempty"`
	// LogLevel
	// +optional
	LogLevel *int `json:"logLevel,omitempty"`
}

ElevatorSpec defines the desired state of Elevator.

func (*ElevatorSpec) DeepCopy

func (in *ElevatorSpec) DeepCopy() *ElevatorSpec

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

func (*ElevatorSpec) DeepCopyInto

func (in *ElevatorSpec) DeepCopyInto(out *ElevatorSpec)

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

func (*ElevatorSpec) SetLogLevel

func (a *ElevatorSpec) SetLogLevel(logLevel int)

type ElevatorStatus

type ElevatorStatus struct {
	// ObservedGeneration is the most recent generation observed for this Elevator by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a Elevator's current state.
	Conditions []ElevatorCondition `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 ElevatorPhaseType `json:"phase,omitempty"`
}

ElevatorStatus defines the observed state of Elevator.

func (*ElevatorStatus) DeepCopy

func (in *ElevatorStatus) DeepCopy() *ElevatorStatus

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

func (*ElevatorStatus) DeepCopyInto

func (in *ElevatorStatus) DeepCopyInto(out *ElevatorStatus)

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

func (*ElevatorStatus) GetCondition

func (s *ElevatorStatus) GetCondition(t ElevatorConditionType) (condition ElevatorCondition, exists bool)

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

func (*ElevatorStatus) SetCondition

func (s *ElevatorStatus) SetCondition(condition ElevatorCondition)

SetCondition replaces or adds the given condition.

type Ferry

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

	Spec   FerrySpec   `json:"spec,omitempty"`
	Status FerryStatus `json:"status,omitempty"`
}

Ferry manages the deployment of the Ferry controller manager.

Ferry lives in the Provider Namespace. For each ferry the KubeCarrier operator spins up the ferry controller deployment, necessary roles, service accounts, and role bindings.

The reason for ferry controller deployment are multiples:

  • security --> KubeCarrier operator has greater privileges then ferry controller
  • resource isolation --> each ferry controller pod operates only on a single service cluster, thus resource allocation and monitoring is separate per ferry. This allows finer grade resource tuning and monitoring
  • flexibility --> If needed different ferries could have different deployments depending on their specific need (e.g. KubeCarrier image version for gradual rolling upgrade, different resource allocation, etc),

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all

func (*Ferry) DeepCopy

func (in *Ferry) DeepCopy() *Ferry

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

func (*Ferry) DeepCopyInto

func (in *Ferry) DeepCopyInto(out *Ferry)

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

func (*Ferry) DeepCopyObject

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

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

func (*Ferry) IsPaused

func (s *Ferry) IsPaused() bool

IsPaused returns if the Ferry is paused.

func (*Ferry) IsReady

func (s *Ferry) IsReady() bool

IsReady returns if the Ferry is ready.

func (*Ferry) SetPausedCondition

func (s *Ferry) SetPausedCondition() bool

func (*Ferry) SetReadyCondition

func (s *Ferry) SetReadyCondition() bool

func (*Ferry) SetTerminatingCondition

func (s *Ferry) SetTerminatingCondition() bool

func (*Ferry) SetUnPausedCondition

func (s *Ferry) SetUnPausedCondition() bool

func (*Ferry) SetUnReadyCondition

func (s *Ferry) SetUnReadyCondition() bool

type FerryCondition

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

FerryCondition contains details for the current condition of this Ferry.

func (*FerryCondition) DeepCopy

func (in *FerryCondition) DeepCopy() *FerryCondition

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

func (*FerryCondition) DeepCopyInto

func (in *FerryCondition) DeepCopyInto(out *FerryCondition)

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

func (FerryCondition) True

func (c FerryCondition) True() bool

True returns whether .Status == "True"

type FerryConditionType

type FerryConditionType string

FerryConditionType represents a FerryCondition value.

const (
	// FerryReady represents a Ferry condition is in ready state.
	FerryReady FerryConditionType = "Ready"
	// FerryPaused represents a Ferry condition is in paused state.
	FerryPaused FerryConditionType = "Paused"
)

type FerryList

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

FerryList contains a list of Ferry. +kubebuilder:object:root=true

func (*FerryList) DeepCopy

func (in *FerryList) DeepCopy() *FerryList

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

func (*FerryList) DeepCopyInto

func (in *FerryList) DeepCopyInto(out *FerryList)

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

func (*FerryList) DeepCopyObject

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

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

type FerryPhaseType

type FerryPhaseType string

FerryPhaseType represents all conditions as a single string for printing in kubectl.

const (
	FerryPhaseReady       FerryPhaseType = "Ready"
	FerryPhasePaused      FerryPhaseType = "Paused"
	FerryPhaseNotReady    FerryPhaseType = "NotReady"
	FerryPhaseTerminating FerryPhaseType = "Terminating"
	FerryPhaseUnknown     FerryPhaseType = "Unknown"
)

Values of FerryPhaseType.

type FerrySpec

type FerrySpec struct {
	// KubeconfigSecret specifies the Kubeconfig to use when connecting to the ServiceCluster.
	KubeconfigSecret ObjectReference `json:"kubeconfigSecret"`
	// Paused tell controller to pause reconciliation process and assume that Ferry is ready
	Paused PausedFlagType `json:"paused,omitempty"`
	// LogLevel
	// +optional
	LogLevel *int `json:"logLevel,omitempty"`
}

FerrySpec defines the desired state of Ferry.

func (*FerrySpec) DeepCopy

func (in *FerrySpec) DeepCopy() *FerrySpec

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

func (*FerrySpec) DeepCopyInto

func (in *FerrySpec) DeepCopyInto(out *FerrySpec)

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

func (*FerrySpec) SetLogLevel

func (a *FerrySpec) SetLogLevel(logLevel int)

type FerryStatus

type FerryStatus struct {
	// 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 FerryPhaseType `json:"phase,omitempty"`
	// Conditions is a list of all conditions this Ferry is in.
	Conditions []FerryCondition `json:"conditions,omitempty"`
	// The most recent generation observed by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

FerryStatus defines the observed state of Ferry.

func (*FerryStatus) DeepCopy

func (in *FerryStatus) DeepCopy() *FerryStatus

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

func (*FerryStatus) DeepCopyInto

func (in *FerryStatus) DeepCopyInto(out *FerryStatus)

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

func (*FerryStatus) GetCondition

func (s *FerryStatus) GetCondition(t FerryConditionType) (condition FerryCondition, exists bool)

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

func (*FerryStatus) SetCondition

func (s *FerryStatus) SetCondition(condition FerryCondition)

SetCondition replaces or adds the given condition.

type KubeCarrier

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

	Spec   KubeCarrierSpec   `json:"spec,omitempty"`
	Status KubeCarrierStatus `json:"status,omitempty"`
}

KubeCarrier manages the deployment of the KubeCarrier controller manager. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories=all

func (*KubeCarrier) DeepCopy

func (in *KubeCarrier) DeepCopy() *KubeCarrier

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

func (*KubeCarrier) DeepCopyInto

func (in *KubeCarrier) DeepCopyInto(out *KubeCarrier)

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

func (*KubeCarrier) DeepCopyObject

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

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

func (*KubeCarrier) IsPaused

func (s *KubeCarrier) IsPaused() bool

IsPaused returns if the KubeCarrier is paused.

func (*KubeCarrier) IsReady

func (s *KubeCarrier) IsReady() bool

IsReady returns if the KubeCarrier is ready.

func (*KubeCarrier) SetPausedCondition

func (s *KubeCarrier) SetPausedCondition() bool

func (*KubeCarrier) SetTerminatingCondition

func (s *KubeCarrier) SetTerminatingCondition() bool

func (*KubeCarrier) SetUnPausedCondition

func (s *KubeCarrier) SetUnPausedCondition() bool

type KubeCarrierCondition

type KubeCarrierCondition struct {
	// Type is the type of the KubeCarrier condition, currently ('Ready').
	Type KubeCarrierConditionType `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"`
}

KubeCarrierCondition contains details for the current condition of this KubeCarrier.

func (*KubeCarrierCondition) DeepCopy

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

func (*KubeCarrierCondition) DeepCopyInto

func (in *KubeCarrierCondition) DeepCopyInto(out *KubeCarrierCondition)

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

func (KubeCarrierCondition) True

func (c KubeCarrierCondition) True() bool

True returns whether .Status == "True"

type KubeCarrierConditionType

type KubeCarrierConditionType string

KubeCarrierConditionType represents a KubeCarrierCondition value.

const (
	// KubeCarrierReady represents a KubeCarrier condition is in ready state.
	KubeCarrierReady           KubeCarrierConditionType = "Ready"
	KubeCarrierDeploymentReady KubeCarrierConditionType = "DeploymentReady"
	KubeCarrierAPIServerReady  KubeCarrierConditionType = "APIServerReady"
	// KubeCarrierPaused represents a KubeCarrier condition is in paused state.
	KubeCarrierPaused KubeCarrierConditionType = "Paused"
)

type KubeCarrierList

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

KubeCarrierList contains a list of KubeCarrier

func (*KubeCarrierList) DeepCopy

func (in *KubeCarrierList) DeepCopy() *KubeCarrierList

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

func (*KubeCarrierList) DeepCopyInto

func (in *KubeCarrierList) DeepCopyInto(out *KubeCarrierList)

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

func (*KubeCarrierList) DeepCopyObject

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

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

type KubeCarrierPhaseType

type KubeCarrierPhaseType string

KubeCarrierPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	KubeCarrierPhaseReady       KubeCarrierPhaseType = "Ready"
	KubeCarrierPhasePaused      KubeCarrierPhaseType = "Paused"
	KubeCarrierPhaseNotReady    KubeCarrierPhaseType = "NotReady"
	KubeCarrierPhaseUnknown     KubeCarrierPhaseType = "Unknown"
	KubeCarrierPhaseTerminating KubeCarrierPhaseType = "Terminating"
)

Values of KubeCarrierPhaseType.

type KubeCarrierSpec

type KubeCarrierSpec struct {
	// +optional
	API APIServerSpec `json:"api,omitempty"`
	// Paused tell controller to pause reconciliation process and assume that KubaCarrier is ready
	// +optional
	Paused PausedFlagType `json:"paused,omitempty"`
	// LogLevel
	// +optional
	LogLevel int `json:"logLevel,omitempty"`
}

KubeCarrierSpec defines the desired state of KubeCarrier

func (*KubeCarrierSpec) DeepCopy

func (in *KubeCarrierSpec) DeepCopy() *KubeCarrierSpec

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

func (*KubeCarrierSpec) DeepCopyInto

func (in *KubeCarrierSpec) DeepCopyInto(out *KubeCarrierSpec)

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

func (*KubeCarrierSpec) SetLogLevel

func (a *KubeCarrierSpec) SetLogLevel(logLevel int)

type KubeCarrierStatus

type KubeCarrierStatus struct {
	// ObservedGeneration is the most recent generation observed for this KubeCarrier by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a KubeCarrier's current state.
	Conditions []KubeCarrierCondition `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 KubeCarrierPhaseType `json:"phase,omitempty"`
}

KubeCarrierStatus defines the observed state of KubeCarrier

func (*KubeCarrierStatus) DeepCopy

func (in *KubeCarrierStatus) DeepCopy() *KubeCarrierStatus

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

func (*KubeCarrierStatus) DeepCopyInto

func (in *KubeCarrierStatus) DeepCopyInto(out *KubeCarrierStatus)

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

func (*KubeCarrierStatus) GetCondition

func (s *KubeCarrierStatus) GetCondition(t KubeCarrierConditionType) (condition KubeCarrierCondition, exists bool)

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

func (*KubeCarrierStatus) SetCondition

func (s *KubeCarrierStatus) SetCondition(condition KubeCarrierCondition)

SetCondition replaces or adds the given condition.

type ObjectReference

type ObjectReference struct {
	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 PausedFlagType

type PausedFlagType string

PausedFlagType represents a enable/disable flag

const (
	PausedFlagTrue  PausedFlagType = "True"
	PausedFlagFalse PausedFlagType = "False"
)

Values of PausedFlagType.

func (PausedFlagType) IsPaused

func (o PausedFlagType) IsPaused() bool

type ServiceAccount

type ServiceAccount struct{}

func (*ServiceAccount) DeepCopy

func (in *ServiceAccount) DeepCopy() *ServiceAccount

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

func (*ServiceAccount) DeepCopyInto

func (in *ServiceAccount) DeepCopyInto(out *ServiceAccount)

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

type StaticUsers

type StaticUsers struct {
	// HtpassswdSecret specifies the htpasswd secret to use for static user authentication.
	HtpasswdSecret ObjectReference `json:"htpasswdSecret"`
}

func (*StaticUsers) DeepCopy

func (in *StaticUsers) DeepCopy() *StaticUsers

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

func (*StaticUsers) DeepCopyInto

func (in *StaticUsers) DeepCopyInto(out *StaticUsers)

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