v1beta2

package
v0.8.1-20220224-1400 Latest Latest
Warning

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

Go to latest
Published: Feb 24, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package v1beta2 contains API Schema definitions for the rc.app.stacks v1beta2 API group +kubebuilder:object:generate=true +groupName=rc.app.stacks

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "rc.app.stacks", Version: "v1beta2"}

	// 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 OperationStatusCondition

type OperationStatusCondition struct {
	LastTransitionTime *metav1.Time                 `json:"lastTransitionTime,omitempty"`
	LastUpdateTime     metav1.Time                  `json:"lastUpdateTime,omitempty"`
	Reason             string                       `json:"reason,omitempty"`
	Message            string                       `json:"message,omitempty"`
	Status             corev1.ConditionStatus       `json:"status,omitempty"`
	Type               OperationStatusConditionType `json:"type,omitempty"`
}

OperationStatusCondition ... +k8s:openapi-gen=true

func GetOperationCondition

GetOperationCondition returns condition of specific type

func SetOperationCondition

SetOperationCondition set condition of specific type or appends if not present

func (*OperationStatusCondition) DeepCopy

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

func (*OperationStatusCondition) DeepCopyInto

func (in *OperationStatusCondition) DeepCopyInto(out *OperationStatusCondition)

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

type OperationStatusConditionType

type OperationStatusConditionType string

OperationStatusConditionType ...

const (
	// OperationStatusConditionTypeStarted indicates whether operation has been started
	OperationStatusConditionTypeStarted OperationStatusConditionType = "Started"
	// OperationStatusConditionTypeCompleted indicates whether operation has been completed
	OperationStatusConditionTypeCompleted OperationStatusConditionType = "Completed"
)

type RuntimeComponent

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

	Spec   RuntimeComponentSpec   `json:"spec,omitempty"`
	Status RuntimeComponentStatus `json:"status,omitempty"`
}

Represents the deployment of a runtime component

func (*RuntimeComponent) DeepCopy

func (in *RuntimeComponent) DeepCopy() *RuntimeComponent

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

func (*RuntimeComponent) DeepCopyInto

func (in *RuntimeComponent) DeepCopyInto(out *RuntimeComponent)

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

func (*RuntimeComponent) DeepCopyObject

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

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

func (*RuntimeComponent) GetAffinity

func (cr *RuntimeComponent) GetAffinity() common.BaseComponentAffinity

GetAffinity returns deployment's node and pod affinity settings

func (*RuntimeComponent) GetAnnotations

func (cr *RuntimeComponent) GetAnnotations() map[string]string

GetAnnotations returns set of annotations to be added to all resources

func (*RuntimeComponent) GetApplicationImage

func (cr *RuntimeComponent) GetApplicationImage() string

GetApplicationImage returns application image

func (*RuntimeComponent) GetApplicationName

func (cr *RuntimeComponent) GetApplicationName() string

GetApplicationName returns Application name

func (*RuntimeComponent) GetApplicationVersion

func (cr *RuntimeComponent) GetApplicationVersion() string

GetApplicationVersion returns application version

func (*RuntimeComponent) GetAutoscaling

func (cr *RuntimeComponent) GetAutoscaling() common.BaseComponentAutoscaling

GetAutoscaling returns autoscaling settings

func (*RuntimeComponent) GetCreateKnativeService

func (cr *RuntimeComponent) GetCreateKnativeService() *bool

GetCreateKnativeService returns flag that toggles Knative service

func (*RuntimeComponent) GetDeployment

func (cr *RuntimeComponent) GetDeployment() common.BaseComponentDeployment

GetDeployment returns deployment settings

func (*RuntimeComponent) GetEnv

func (cr *RuntimeComponent) GetEnv() []corev1.EnvVar

GetEnv returns slice of environment variables

func (*RuntimeComponent) GetEnvFrom

func (cr *RuntimeComponent) GetEnvFrom() []corev1.EnvFromSource

GetEnvFrom returns slice of environment variables from source

func (*RuntimeComponent) GetExpose

func (cr *RuntimeComponent) GetExpose() *bool

GetExpose returns expose flag

func (*RuntimeComponent) GetGroupName

func (cr *RuntimeComponent) GetGroupName() string

GetGroupName returns group name to be used in labels and annotation

func (*RuntimeComponent) GetInitContainers

func (cr *RuntimeComponent) GetInitContainers() []corev1.Container

GetInitContainers returns list of init containers

func (*RuntimeComponent) GetLabels

func (cr *RuntimeComponent) GetLabels() map[string]string

GetLabels returns set of labels to be added to all resources

func (*RuntimeComponent) GetMonitoring

func (cr *RuntimeComponent) GetMonitoring() common.BaseComponentMonitoring

GetMonitoring returns monitoring settings

func (*RuntimeComponent) GetProbes

func (*RuntimeComponent) GetPullPolicy

func (cr *RuntimeComponent) GetPullPolicy() *corev1.PullPolicy

GetPullPolicy returns image pull policy

func (*RuntimeComponent) GetPullSecret

func (cr *RuntimeComponent) GetPullSecret() *string

GetPullSecret returns secret name for docker registry credentials

func (*RuntimeComponent) GetReplicas

func (cr *RuntimeComponent) GetReplicas() *int32

GetReplicas returns number of replicas

func (*RuntimeComponent) GetResourceConstraints

func (cr *RuntimeComponent) GetResourceConstraints() *corev1.ResourceRequirements

GetResourceConstraints returns resource constraints

func (*RuntimeComponent) GetRoute

GetRoute returns route

func (*RuntimeComponent) GetService

func (cr *RuntimeComponent) GetService() common.BaseComponentService

GetService returns service settings

func (*RuntimeComponent) GetServiceAccountName

func (cr *RuntimeComponent) GetServiceAccountName() *string

GetServiceAccountName returns service account name

func (*RuntimeComponent) GetSidecarContainers

func (cr *RuntimeComponent) GetSidecarContainers() []corev1.Container

GetSidecarContainers returns list of sidecar containers

func (*RuntimeComponent) GetStatefulSet

func (cr *RuntimeComponent) GetStatefulSet() common.BaseComponentStatefulSet

GetStatefulSet returns statefulSet settings

func (*RuntimeComponent) GetStatus

GetStatus returns RuntimeComponent status

func (*RuntimeComponent) GetVolumeMounts

func (cr *RuntimeComponent) GetVolumeMounts() []corev1.VolumeMount

GetVolumeMounts returns volume mounts slice

func (*RuntimeComponent) GetVolumes

func (cr *RuntimeComponent) GetVolumes() []corev1.Volume

GetVolumes returns volumes slice

func (*RuntimeComponent) Initialize

func (cr *RuntimeComponent) Initialize()

Initialize the RuntimeComponent instance

type RuntimeComponentAffinity

type RuntimeComponentAffinity struct {

	// Controls which nodes the pod are scheduled to run on, based on labels on the node.
	// +operator-sdk:csv:customresourcedefinitions:order=33,type=spec,displayName="Node Affinity",xDescriptors="urn:alm:descriptor:com.tectonic.ui:nodeAffinity"
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty"`

	// Controls the nodes the pod are scheduled to run on, based on labels on the pods that are already running on the node.
	// +operator-sdk:csv:customresourcedefinitions:order=34,type=spec,displayName="Pod Affinity",xDescriptors="urn:alm:descriptor:com.tectonic.ui:podAffinity"
	PodAffinity *corev1.PodAffinity `json:"podAffinity,omitempty"`

	// Enables the ability to prevent running a pod on the same node as another pod.
	// +operator-sdk:csv:customresourcedefinitions:order=35,type=spec,displayName="Pod Anti Affinity",xDescriptors="urn:alm:descriptor:com.tectonic.ui:podAntiAffinity"
	PodAntiAffinity *corev1.PodAntiAffinity `json:"podAntiAffinity,omitempty"`

	// A YAML object that contains a set of required labels and their values.
	// +operator-sdk:csv:customresourcedefinitions:order=36,type=spec,displayName="Node Affinity Labels",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	NodeAffinityLabels map[string]string `json:"nodeAffinityLabels,omitempty"`

	// An array of architectures to be considered for deployment. Their position in the array indicates preference.
	// +listType=set
	Architecture []string `json:"architecture,omitempty"`
}

Configure pods to run on particular Nodes.

func (*RuntimeComponentAffinity) DeepCopy

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

func (*RuntimeComponentAffinity) DeepCopyInto

func (in *RuntimeComponentAffinity) DeepCopyInto(out *RuntimeComponentAffinity)

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

func (*RuntimeComponentAffinity) GetArchitecture

func (a *RuntimeComponentAffinity) GetArchitecture() []string

GetArchitecture returns list of architecture names

func (*RuntimeComponentAffinity) GetNodeAffinity

func (a *RuntimeComponentAffinity) GetNodeAffinity() *corev1.NodeAffinity

GetNodeAffinity returns node affinity

func (*RuntimeComponentAffinity) GetNodeAffinityLabels

func (a *RuntimeComponentAffinity) GetNodeAffinityLabels() map[string]string

GetNodeAffinityLabels returns list of architecture names

func (*RuntimeComponentAffinity) GetPodAffinity

func (a *RuntimeComponentAffinity) GetPodAffinity() *corev1.PodAffinity

GetPodAffinity returns pod affinity

func (*RuntimeComponentAffinity) GetPodAntiAffinity

func (a *RuntimeComponentAffinity) GetPodAntiAffinity() *corev1.PodAntiAffinity

GetPodAntiAffinity returns pod anti-affinity

type RuntimeComponentAutoScaling

type RuntimeComponentAutoScaling struct {
	// Required field for autoscaling. Upper limit for the number of pods that can be set by the autoscaler. Parameter .spec.resources.requests.cpu must also be specified.
	// +kubebuilder:validation:Minimum=1
	// +operator-sdk:csv:customresourcedefinitions:order=1,type=spec,displayName="Max Replicas",xDescriptors="urn:alm:descriptor:com.tectonic.ui:number"
	MaxReplicas int32 `json:"maxReplicas,omitempty"`

	// Lower limit for the number of pods that can be set by the autoscaler.
	// +operator-sdk:csv:customresourcedefinitions:order=2,type=spec,displayName="Min Replicas",xDescriptors="urn:alm:descriptor:com.tectonic.ui:number"
	MinReplicas *int32 `json:"minReplicas,omitempty"`

	// Target average CPU utilization, represented as a percentage of requested CPU, over all the pods.
	// +operator-sdk:csv:customresourcedefinitions:order=3,type=spec,displayName="Target CPU Utilization Percentage",xDescriptors="urn:alm:descriptor:com.tectonic.ui:number"
	TargetCPUUtilizationPercentage *int32 `json:"targetCPUUtilizationPercentage,omitempty"`
}

Configures the desired resource consumption of pods.

func (*RuntimeComponentAutoScaling) DeepCopy

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

func (*RuntimeComponentAutoScaling) DeepCopyInto

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

func (*RuntimeComponentAutoScaling) GetMaxReplicas

func (a *RuntimeComponentAutoScaling) GetMaxReplicas() int32

GetMaxReplicas returns maximum replicas

func (*RuntimeComponentAutoScaling) GetMinReplicas

func (a *RuntimeComponentAutoScaling) GetMinReplicas() *int32

GetMinReplicas returns minimum replicas

func (*RuntimeComponentAutoScaling) GetTargetCPUUtilizationPercentage

func (a *RuntimeComponentAutoScaling) GetTargetCPUUtilizationPercentage() *int32

GetTargetCPUUtilizationPercentage returns target cpu usage

type RuntimeComponentDeployment

type RuntimeComponentDeployment struct {

	// Specifies the strategy to replace old deployment pods with new pods.
	// +operator-sdk:csv:customresourcedefinitions:order=21,type=spec,displayName="Deployment Update Strategy",xDescriptors="urn:alm:descriptor:com.tectonic.ui:updateStrategy"
	UpdateStrategy *appsv1.DeploymentStrategy `json:"updateStrategy,omitempty"`

	// Annotations to be added only to the Deployment and resources owned by the Deployment.
	Annotations map[string]string `json:"annotations,omitempty"`
}

Defines the desired state and cycle of applications.

func (*RuntimeComponentDeployment) DeepCopy

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

func (*RuntimeComponentDeployment) DeepCopyInto

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

func (*RuntimeComponentDeployment) GetAnnotations

func (rcd *RuntimeComponentDeployment) GetAnnotations() map[string]string

GetAnnotations returns annotations to be added only to the Deployment and its child resources

func (*RuntimeComponentDeployment) GetDeploymentUpdateStrategy

func (cr *RuntimeComponentDeployment) GetDeploymentUpdateStrategy() *appsv1.DeploymentStrategy

GetDeploymentStrategy returns deployment strategy struct

type RuntimeComponentList

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

RuntimeComponentList contains a list of RuntimeComponent.

func (*RuntimeComponentList) DeepCopy

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

func (*RuntimeComponentList) DeepCopyInto

func (in *RuntimeComponentList) DeepCopyInto(out *RuntimeComponentList)

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

func (*RuntimeComponentList) DeepCopyObject

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

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

type RuntimeComponentMonitoring

type RuntimeComponentMonitoring struct {

	// Labels to set on ServiceMonitor.
	// +operator-sdk:csv:customresourcedefinitions:order=30,type=spec,displayName="Monitoring Labels",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Labels map[string]string `json:"labels,omitempty"`

	// A YAML snippet representing an array of Endpoint component from ServiceMonitor.
	// +listType=atomic
	// +operator-sdk:csv:customresourcedefinitions:order=31,type=spec,displayName="Monitoring Endpoints",xDescriptors="urn:alm:descriptor:com.tectonic.ui:endpointList"
	Endpoints []prometheusv1.Endpoint `json:"endpoints,omitempty"`
}

Specifies parameters for Service Monitor.

func (*RuntimeComponentMonitoring) DeepCopy

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

func (*RuntimeComponentMonitoring) DeepCopyInto

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

func (*RuntimeComponentMonitoring) GetEndpoints

func (m *RuntimeComponentMonitoring) GetEndpoints() []prometheusv1.Endpoint

GetEndpoints returns endpoints to be added to ServiceMonitor

func (*RuntimeComponentMonitoring) GetLabels

func (m *RuntimeComponentMonitoring) GetLabels() map[string]string

GetLabels returns labels to be added on ServiceMonitor

type RuntimeComponentProbes

type RuntimeComponentProbes struct {
	// Periodic probe of container liveness. Container will be restarted if the probe fails.
	// +operator-sdk:csv:customresourcedefinitions:order=3,type=spec,displayName="Liveness Probe"
	Liveness *corev1.Probe `json:"liveness,omitempty"`

	// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails.
	// +operator-sdk:csv:customresourcedefinitions:order=2,type=spec,displayName="Readiness Probe"
	Readiness *corev1.Probe `json:"readiness,omitempty"`

	// Probe to determine successful initialization. If specified, other probes are not executed until this completes successfully.
	// +operator-sdk:csv:customresourcedefinitions:order=1,type=spec,displayName="Startup Probe"
	Startup *corev1.Probe `json:"startup,omitempty"`
}

Define health checks on application container to determine whether it is alive or ready to receive traffic

func (*RuntimeComponentProbes) DeepCopy

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

func (*RuntimeComponentProbes) DeepCopyInto

func (in *RuntimeComponentProbes) DeepCopyInto(out *RuntimeComponentProbes)

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

func (*RuntimeComponentProbes) GetLivenessProbe

func (p *RuntimeComponentProbes) GetLivenessProbe() *corev1.Probe

GetLivenessProbe returns liveness probe

func (*RuntimeComponentProbes) GetReadinessProbe

func (p *RuntimeComponentProbes) GetReadinessProbe() *corev1.Probe

GetReadinessProbe returns readiness probe

func (*RuntimeComponentProbes) GetStartupProbe

func (p *RuntimeComponentProbes) GetStartupProbe() *corev1.Probe

GetStartupProbe returns startup probe

type RuntimeComponentRoute

type RuntimeComponentRoute struct {

	// Annotations to be added to the Route.
	// +operator-sdk:csv:customresourcedefinitions:order=38,type=spec,displayName="Route Annotations",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Annotations map[string]string `json:"annotations,omitempty"`

	// Hostname to be used for the Route.
	// +operator-sdk:csv:customresourcedefinitions:order=39,type=spec,displayName="Route Host",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Host string `json:"host,omitempty"`

	// Path to be used for Route.
	// +operator-sdk:csv:customresourcedefinitions:order=40,type=spec,displayName="Route Path",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Path string `json:"path,omitempty"`

	// Path type to be used for Ingress.
	PathType networkingv1.PathType `json:"pathType,omitempty"`

	// A name of a secret that already contains TLS key, certificate and CA to be used in the route. Also can contain destination CA certificate.
	// +operator-sdk:csv:customresourcedefinitions:order=41,type=spec,displayName="Certificate Secret Reference",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	CertificateSecretRef *string `json:"certificateSecretRef,omitempty"`

	// TLS termination policy. Can be one of edge, reencrypt and passthrough.
	// +operator-sdk:csv:customresourcedefinitions:order=42,type=spec,displayName="Termination",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Termination *routev1.TLSTerminationType `json:"termination,omitempty"`

	// HTTP traffic policy with TLS enabled. Can be one of Allow, Redirect and None.
	// +operator-sdk:csv:customresourcedefinitions:order=43,type=spec,displayName="Insecure Edge Termination Policy",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	InsecureEdgeTerminationPolicy *routev1.InsecureEdgeTerminationPolicyType `json:"insecureEdgeTerminationPolicy,omitempty"`
}

Configures the ingress resource. +k8s:openapi-gen=true

func (*RuntimeComponentRoute) DeepCopy

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

func (*RuntimeComponentRoute) DeepCopyInto

func (in *RuntimeComponentRoute) DeepCopyInto(out *RuntimeComponentRoute)

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

func (*RuntimeComponentRoute) GetAnnotations

func (r *RuntimeComponentRoute) GetAnnotations() map[string]string

GetAnnotations returns route annotations

func (*RuntimeComponentRoute) GetCertificateSecretRef

func (r *RuntimeComponentRoute) GetCertificateSecretRef() *string

GetCertificateSecretRef returns a secret reference with a certificate

func (*RuntimeComponentRoute) GetHost

func (r *RuntimeComponentRoute) GetHost() string

GetHost returns hostname to be used by the route

func (*RuntimeComponentRoute) GetInsecureEdgeTerminationPolicy

func (r *RuntimeComponentRoute) GetInsecureEdgeTerminationPolicy() *routev1.InsecureEdgeTerminationPolicyType

GetInsecureEdgeTerminationPolicy returns terminatation of the route's TLS

func (*RuntimeComponentRoute) GetPath

func (r *RuntimeComponentRoute) GetPath() string

GetPath returns path to use for the route

func (*RuntimeComponentRoute) GetPathType

func (r *RuntimeComponentRoute) GetPathType() networkingv1.PathType

GetPathType returns pathType to use for the route

func (*RuntimeComponentRoute) GetTermination

func (r *RuntimeComponentRoute) GetTermination() *routev1.TLSTerminationType

GetTermination returns terminatation of the route's TLS

type RuntimeComponentService

type RuntimeComponentService struct {
	// The port exposed by the container.
	// +kubebuilder:validation:Maximum=65535
	// +kubebuilder:validation:Minimum=1
	// +operator-sdk:csv:customresourcedefinitions:order=9,type=spec,displayName="Service Port",xDescriptors="urn:alm:descriptor:com.tectonic.ui:number"
	Port int32 `json:"port,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=10,type=spec,displayName="Service Type",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Type *corev1.ServiceType `json:"type,omitempty"`

	// Node proxies this port into your service.
	// +kubebuilder:validation:Maximum=65535
	// +kubebuilder:validation:Minimum=0
	// +operator-sdk:csv:customresourcedefinitions:order=11,type=spec,displayName="Node Port",xDescriptors="urn:alm:descriptor:com.tectonic.ui:number"
	NodePort *int32 `json:"nodePort,omitempty"`

	// The name for the port exposed by the container.
	// +operator-sdk:csv:customresourcedefinitions:order=12,type=spec,displayName="Port Name",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	PortName string `json:"portName,omitempty"`

	// Annotations to be added to the service.
	// +operator-sdk:csv:customresourcedefinitions:order=13,type=spec,displayName="Service Annotations",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Annotations map[string]string `json:"annotations,omitempty"`

	// The port that the operator assigns to containers inside pods. Defaults to the value of spec.service.port.
	// +kubebuilder:validation:Maximum=65535
	// +kubebuilder:validation:Minimum=1
	// +operator-sdk:csv:customresourcedefinitions:order=14,type=spec,displayName="Target Port",xDescriptors="urn:alm:descriptor:com.tectonic.ui:number"
	TargetPort *int32 `json:"targetPort,omitempty"`

	// A name of a secret that already contains TLS key, certificate and CA to be mounted in the pod.
	// +k8s:openapi-gen=true
	// +operator-sdk:csv:customresourcedefinitions:order=15,type=spec,displayName="Certificate Secret Reference",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	CertificateSecretRef *string `json:"certificateSecretRef,omitempty"`

	// An array consisting of service ports.
	// +operator-sdk:csv:customresourcedefinitions:order=16,type=spec
	Ports []corev1.ServicePort `json:"ports,omitempty"`

	// Expose the application as a bindable service. Defaults to false.
	// +operator-sdk:csv:customresourcedefinitions:order=17,type=spec,displayName="Bindable",xDescriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
	Bindable *bool `json:"bindable,omitempty"`
}

Configures parameters for the network service of pods.

func (*RuntimeComponentService) DeepCopy

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

func (*RuntimeComponentService) DeepCopyInto

func (in *RuntimeComponentService) DeepCopyInto(out *RuntimeComponentService)

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

func (*RuntimeComponentService) GetAnnotations

func (s *RuntimeComponentService) GetAnnotations() map[string]string

GetAnnotations returns a set of annotations to be added to the service

func (*RuntimeComponentService) GetBindable

func (s *RuntimeComponentService) GetBindable() *bool

GetBindable returns whether the application should be exposable as a service

func (*RuntimeComponentService) GetCertificateSecretRef

func (s *RuntimeComponentService) GetCertificateSecretRef() *string

GetCertificateSecretRef returns a secret reference with a certificate

func (*RuntimeComponentService) GetNodePort

func (s *RuntimeComponentService) GetNodePort() *int32

GetNodePort returns service nodePort

func (*RuntimeComponentService) GetPort

func (s *RuntimeComponentService) GetPort() int32

GetPort returns service port

func (*RuntimeComponentService) GetPortName

func (s *RuntimeComponentService) GetPortName() string

GetPortName returns name of service port

func (*RuntimeComponentService) GetPorts

func (s *RuntimeComponentService) GetPorts() []corev1.ServicePort

GetPorts returns a list of service ports

func (*RuntimeComponentService) GetTargetPort

func (s *RuntimeComponentService) GetTargetPort() *int32

GetTargetPort returns the internal target port for containers

func (*RuntimeComponentService) GetType

GetType returns service type

type RuntimeComponentSpec

type RuntimeComponentSpec struct {

	// Application image to deploy.
	// +operator-sdk:csv:customresourcedefinitions:order=1,type=spec,displayName="Application Image",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	ApplicationImage string `json:"applicationImage"`

	// Name of the application. Defaults to the name of this custom resource.
	// +operator-sdk:csv:customresourcedefinitions:order=2,type=spec,displayName="Application Name",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	ApplicationName string `json:"applicationName,omitempty"`

	// Version of the application.
	// +operator-sdk:csv:customresourcedefinitions:order=3,type=spec,displayName="Application Version",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	ApplicationVersion string `json:"applicationVersion,omitempty"`

	// Policy for pulling container images. Defaults to IfNotPresent.
	// +operator-sdk:csv:customresourcedefinitions:order=4,type=spec,displayName="Pull Policy",xDescriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
	PullPolicy *corev1.PullPolicy `json:"pullPolicy,omitempty"`

	// Name of the Secret to use to pull images from the specified repository. It is not required if the cluster is configured with a global image pull secret.
	// +operator-sdk:csv:customresourcedefinitions:order=5,type=spec,displayName="Pull Secret",xDescriptors="urn:alm:descriptor:io.kubernetes:Secret"
	PullSecret *string `json:"pullSecret,omitempty"`

	// Name of the service account to use for deploying the application. A service account is automatically created if it's not specified.
	// +operator-sdk:csv:customresourcedefinitions:order=6,type=spec,displayName="Service Account Name",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	ServiceAccountName *string `json:"serviceAccountName,omitempty"`

	// Create Knative resources and use Knative serving.
	// +operator-sdk:csv:customresourcedefinitions:order=7,type=spec,displayName="Create Knative Service",xDescriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
	CreateKnativeService *bool `json:"createKnativeService,omitempty"`

	// Expose the application externally via a Route, a Knative Route or an Ingress resource.
	// +operator-sdk:csv:customresourcedefinitions:order=8,type=spec,displayName="Expose",xDescriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
	Expose *bool `json:"expose,omitempty"`

	// Number of pods to create. Not applicable when .spec.autoscaling or .spec.createKnativeService is specified.
	// +operator-sdk:csv:customresourcedefinitions:order=9,type=spec,displayName="Replicas",xDescriptors="urn:alm:descriptor:com.tectonic.ui:podCount"
	Replicas *int32 `json:"replicas,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=10,type=spec,displayName="Auto Scaling"
	Autoscaling *RuntimeComponentAutoScaling `json:"autoscaling,omitempty"`

	// Resource requests and limits for the application container.
	// +operator-sdk:csv:customresourcedefinitions:order=11,type=spec,displayName="Resource Requirements",xDescriptors="urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=12,type=spec,displayName="Probes"
	Probes *RuntimeComponentProbes `json:"probes,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=13,type=spec,displayName="Deployment"
	Deployment *RuntimeComponentDeployment `json:"deployment,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=14,type=spec,displayName="StatefulSet"
	StatefulSet *RuntimeComponentStatefulSet `json:"statefulSet,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=15,type=spec,displayName="Service"
	Service *RuntimeComponentService `json:"service,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=16,type=spec,displayName="Route"
	Route *RuntimeComponentRoute `json:"route,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=17,type=spec,displayName="Monitoring"
	Monitoring *RuntimeComponentMonitoring `json:"monitoring,omitempty"`

	// An array of environment variables for the application container.
	// +listType=map
	// +listMapKey=name
	// +operator-sdk:csv:customresourcedefinitions:order=18,type=spec,displayName="Environment Variables"
	Env []corev1.EnvVar `json:"env,omitempty"`

	// List of sources to populate environment variables in the application container.
	// +listType=atomic
	// +operator-sdk:csv:customresourcedefinitions:order=19,type=spec,displayName="Environment Variables from Sources"
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`

	// Represents a volume with data that is accessible to the application container.
	// +listType=map
	// +listMapKey=name
	// +operator-sdk:csv:customresourcedefinitions:order=20,type=spec,displayName="Volumes"
	Volumes []corev1.Volume `json:"volumes,omitempty"`

	// Represents where to mount the volumes into the application container.
	// +listType=atomic
	// +operator-sdk:csv:customresourcedefinitions:order=21,type=spec,displayName="Volume Mounts"
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`

	// List of containers to run before other containers in a pod.
	// +listType=map
	// +listMapKey=name
	// +operator-sdk:csv:customresourcedefinitions:order=22,type=spec,displayName="Init Containers"
	InitContainers []corev1.Container `json:"initContainers,omitempty"`

	// List of sidecar containers. These are additional containers to be added to the pods.
	// +listType=map
	// +listMapKey=name
	// +operator-sdk:csv:customresourcedefinitions:order=23,type=spec,displayName="Sidecar Containers"
	SidecarContainers []corev1.Container `json:"sidecarContainers,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=24,type=spec,displayName="Affinity"
	Affinity *RuntimeComponentAffinity `json:"affinity,omitempty"`
}

Defines the desired state of RuntimeComponent.

func (*RuntimeComponentSpec) DeepCopy

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

func (*RuntimeComponentSpec) DeepCopyInto

func (in *RuntimeComponentSpec) DeepCopyInto(out *RuntimeComponentSpec)

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

type RuntimeComponentStatefulSet

type RuntimeComponentStatefulSet struct {

	// Specifies the strategy to replace old statefulSet pods with new pods.
	// +operator-sdk:csv:customresourcedefinitions:order=23,type=spec,displayName="StatefulSet Update Strategy",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	UpdateStrategy *appsv1.StatefulSetUpdateStrategy `json:"updateStrategy,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:order=24,type=spec,displayName="Storage"
	Storage *RuntimeComponentStorage `json:"storage,omitempty"`

	// Annotations to be added only to the StatefulSet and resources owned by the StatefulSet.
	Annotations map[string]string `json:"annotations,omitempty"`
}

Defines the desired state and cycle of stateful applications.

func (*RuntimeComponentStatefulSet) DeepCopy

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

func (*RuntimeComponentStatefulSet) DeepCopyInto

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

func (*RuntimeComponentStatefulSet) GetAnnotations

func (rcss *RuntimeComponentStatefulSet) GetAnnotations() map[string]string

GetAnnotations returns annotations to be added only to the StatefulSet and its child resources

func (*RuntimeComponentStatefulSet) GetStatefulSetUpdateStrategy

func (cr *RuntimeComponentStatefulSet) GetStatefulSetUpdateStrategy() *appsv1.StatefulSetUpdateStrategy

GetStatefulSetUpdateStrategy returns statefulSet strategy struct

func (*RuntimeComponentStatefulSet) GetStorage

GetStorage returns storage settings

type RuntimeComponentStatus

type RuntimeComponentStatus struct {

	// +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Status Conditions",xDescriptors="urn:alm:descriptor:io.kubernetes.conditions"
	Conditions     []StatusCondition `json:"conditions,omitempty"`
	ImageReference string            `json:"imageReference,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Service Binding"
	Binding *corev1.LocalObjectReference `json:"binding,omitempty"`
}

Defines the observed state of RuntimeComponent.

func (*RuntimeComponentStatus) DeepCopy

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

func (*RuntimeComponentStatus) DeepCopyInto

func (in *RuntimeComponentStatus) DeepCopyInto(out *RuntimeComponentStatus)

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

func (*RuntimeComponentStatus) GetBinding

GetBinding returns BindingStatus representing binding status

func (*RuntimeComponentStatus) GetCondition

GetCondition ...

func (*RuntimeComponentStatus) GetConditions

func (s *RuntimeComponentStatus) GetConditions() []common.StatusCondition

GetConditions returns slice of conditions

func (*RuntimeComponentStatus) GetImageReference

func (s *RuntimeComponentStatus) GetImageReference() string

GetImageReference returns Docker image reference to be deployed by the CR

func (*RuntimeComponentStatus) NewCondition

func (s *RuntimeComponentStatus) NewCondition() common.StatusCondition

NewCondition returns new condition

func (*RuntimeComponentStatus) SetBinding

SetBinding sets BindingStatus representing binding status

func (*RuntimeComponentStatus) SetCondition

func (s *RuntimeComponentStatus) SetCondition(c common.StatusCondition)

SetCondition ...

func (*RuntimeComponentStatus) SetImageReference

func (s *RuntimeComponentStatus) SetImageReference(imageReference string)

SetImageReference sets Docker image reference on the status portion of the CR

type RuntimeComponentStorage

type RuntimeComponentStorage struct {

	// A convenient field to set the size of the persisted storage.
	// +kubebuilder:validation:Pattern=^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$
	// +operator-sdk:csv:customresourcedefinitions:order=25,type=spec,displayName="Storage Size",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Size string `json:"size,omitempty"`

	// The directory inside the container where this persisted storage will be bound to.
	// +operator-sdk:csv:customresourcedefinitions:order=26,type=spec,displayName="Storage Mount Path",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	MountPath string `json:"mountPath,omitempty"`

	// A YAML object that represents a volumeClaimTemplate component of a StatefulSet.
	// +operator-sdk:csv:customresourcedefinitions:order=27,type=spec,displayName="Storage Volume Claim Template",xDescriptors="urn:alm:descriptor:com.tectonic.ui:PersistentVolumeClaim"
	VolumeClaimTemplate *corev1.PersistentVolumeClaim `json:"volumeClaimTemplate,omitempty"`
}

Defines settings of persisted storage for StatefulSets.

func (*RuntimeComponentStorage) DeepCopy

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

func (*RuntimeComponentStorage) DeepCopyInto

func (in *RuntimeComponentStorage) DeepCopyInto(out *RuntimeComponentStorage)

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

func (*RuntimeComponentStorage) GetMountPath

func (s *RuntimeComponentStorage) GetMountPath() string

GetMountPath returns mount path for persistent volume

func (*RuntimeComponentStorage) GetSize

func (s *RuntimeComponentStorage) GetSize() string

GetSize returns persistent volume size

func (*RuntimeComponentStorage) GetVolumeClaimTemplate

func (s *RuntimeComponentStorage) GetVolumeClaimTemplate() *corev1.PersistentVolumeClaim

GetVolumeClaimTemplate returns a template representing requested persistent volume

type RuntimeOperation

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

	Spec   RuntimeOperationSpec   `json:"spec,omitempty"`
	Status RuntimeOperationStatus `json:"status,omitempty"`
}

Day-2 operation to execute on an instance of runtime component

func (*RuntimeOperation) DeepCopy

func (in *RuntimeOperation) DeepCopy() *RuntimeOperation

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

func (*RuntimeOperation) DeepCopyInto

func (in *RuntimeOperation) DeepCopyInto(out *RuntimeOperation)

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

func (*RuntimeOperation) DeepCopyObject

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

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

type RuntimeOperationList

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

RuntimeOperationList contains a list of RuntimeOperation.

func (*RuntimeOperationList) DeepCopy

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

func (*RuntimeOperationList) DeepCopyInto

func (in *RuntimeOperationList) DeepCopyInto(out *RuntimeOperationList)

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

func (*RuntimeOperationList) DeepCopyObject

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

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

type RuntimeOperationSpec

type RuntimeOperationSpec struct {
	// Name of the Pod to perform runtime operation on. Pod must be from the same namespace as the RuntimeOperation instance.
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Pod Name",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	PodName string `json:"podName"`

	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Container Name",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	ContainerName string `json:"containerName,omitempty"`

	// Command to execute. Not executed within a shell.
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Command",xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
	Command []string `json:"command"`
}

Defines the desired state of RuntimeOperation

func (*RuntimeOperationSpec) DeepCopy

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

func (*RuntimeOperationSpec) DeepCopyInto

func (in *RuntimeOperationSpec) DeepCopyInto(out *RuntimeOperationSpec)

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

type RuntimeOperationStatus

type RuntimeOperationStatus struct {
	// +listType=atomic
	Conditions []OperationStatusCondition `json:"conditions,omitempty"`
}

Defines the observed state of RuntimeOperation.

func (*RuntimeOperationStatus) DeepCopy

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

func (*RuntimeOperationStatus) DeepCopyInto

func (in *RuntimeOperationStatus) DeepCopyInto(out *RuntimeOperationStatus)

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

type StatusCondition

type StatusCondition struct {
	LastTransitionTime *metav1.Time           `json:"lastTransitionTime,omitempty"`
	Reason             string                 `json:"reason,omitempty"`
	Message            string                 `json:"message,omitempty"`
	Status             corev1.ConditionStatus `json:"status,omitempty"`
	Type               StatusConditionType    `json:"type,omitempty"`
}

Defines possible status conditions.

func (*StatusCondition) DeepCopy

func (in *StatusCondition) DeepCopy() *StatusCondition

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

func (*StatusCondition) DeepCopyInto

func (in *StatusCondition) DeepCopyInto(out *StatusCondition)

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

func (*StatusCondition) GetLastTransitionTime

func (c *StatusCondition) GetLastTransitionTime() *metav1.Time

GetLastTransitionTime return time of last status change

func (*StatusCondition) GetMessage

func (c *StatusCondition) GetMessage() string

GetMessage return condition's message

func (*StatusCondition) GetReason

func (c *StatusCondition) GetReason() string

GetReason return condition's message

func (*StatusCondition) GetStatus

func (c *StatusCondition) GetStatus() corev1.ConditionStatus

GetStatus return condition's status

func (*StatusCondition) GetType

GetType returns status condition type

func (*StatusCondition) SetLastTransitionTime

func (c *StatusCondition) SetLastTransitionTime(t *metav1.Time)

SetLastTransitionTime sets time of last status change

func (*StatusCondition) SetMessage

func (c *StatusCondition) SetMessage(m string)

SetMessage sets condition's message

func (*StatusCondition) SetReason

func (c *StatusCondition) SetReason(r string)

SetReason sets condition's reason

func (*StatusCondition) SetStatus

func (c *StatusCondition) SetStatus(s corev1.ConditionStatus)

SetStatus sets condition's status

func (*StatusCondition) SetType

SetType returns status condition type

type StatusConditionType

type StatusConditionType string

Defines the type of status condition.

const (
	// StatusConditionTypeReconciled ...
	StatusConditionTypeReconciled StatusConditionType = "Reconciled"
)

Jump to

Keyboard shortcuts

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