v1alpha1

package
v0.0.0-...-90509e3 Latest Latest
Warning

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

Go to latest
Published: Jan 5, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the egeria v1alpha1 API group +kubebuilder:object:generate=true +groupName=egeria.egeria-project.org

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "egeria.egeria-project.org", 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 Download

type Download struct {
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	Filename string `json:"filename"`
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	Url string `json:"url"`
}

AdditionalDownloads - to define extra files to be downloaded

func (*Download) DeepCopy

func (in *Download) DeepCopy() *Download

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

func (*Download) DeepCopyInto

func (in *Download) DeepCopyInto(out *Download)

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

type EgeriaPlatform

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

	Spec   EgeriaPlatformSpec   `json:"spec,omitempty"`
	Status EgeriaPlatformStatus `json:"status,omitempty"`
}

EgeriaPlatform is the Schema for the egeriaplatforms API +kubebuilder:printcolumn:name="Pods",JSONPath=".status.pods",description="Current pods running",type=string +kubebuilder:printcolumn:name="Deployment",JSONPath=".status.deployment",description="Deployment",type=string +kubebuilder:printcolumn:name="Age",JSONPath=".metadata.creationTimestamp",description="Time since create",type=date

func (*EgeriaPlatform) DeepCopy

func (in *EgeriaPlatform) DeepCopy() *EgeriaPlatform

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

func (*EgeriaPlatform) DeepCopyInto

func (in *EgeriaPlatform) DeepCopyInto(out *EgeriaPlatform)

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

func (*EgeriaPlatform) DeepCopyObject

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

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

type EgeriaPlatformList

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

EgeriaPlatformList contains a list of EgeriaPlatform

func (*EgeriaPlatformList) DeepCopy

func (in *EgeriaPlatformList) DeepCopy() *EgeriaPlatformList

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

func (*EgeriaPlatformList) DeepCopyInto

func (in *EgeriaPlatformList) DeepCopyInto(out *EgeriaPlatformList)

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

func (*EgeriaPlatformList) DeepCopyObject

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

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

type EgeriaPlatformSpec

type EgeriaPlatformSpec struct {
	// TODO: Look at moving to use the standard scaling approach https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#scale-subresource
	// Number of replicas for this platform (ie number of pods to run)
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=1000
	// +kubebuilder:default:=1
	Size int32 `json:"replicas,omitempty"`
	// Secret containing TLS keys and certs
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	Security string `json:"security-secret,omitempty"`
	// Container image to use, overriding operator configuration
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:default="quay.io/odpi/egeria:latest"
	Image string `json:"image,omitempty"`
	// Container image to use, overriding operator configuration
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:default="quay.io/odpi/egeria:latest"
	UtilImage string `json:"utilimage,omitempty"`
	// Configmap used for server configuration
	// +kubebuilder:validation:MaxItems=253
	// +kubebuilder:validation:MinItems=1
	// Should be unique, but cannot be set - restriction of schema validation
	ServerConfig []string `json:"serverconfig"`
	// +kubebuilder:default:=true
	// If true, configured servers will be started when the platform starts up
	Autostart bool `json:"autostart,omitempty"`
	// +kubebuilder:default:="OFF"
	// Sets the log level for debugging
	EgeriaLogLevel string `json:"egerialoglevel,omitempty"`
	// Extra Libraries to be added to classpath. These are downloaded during initialization. For more security use a custom container image with these already present.
	// +kubebuilder:validation:MaxItems=253
	// +kubebuilder:validation:MinItems=1
	Libraries []Download `json:"libraries,omitempty"`
}

EgeriaPlatformSpec : Desired State for Egeria Platform√

func (*EgeriaPlatformSpec) DeepCopy

func (in *EgeriaPlatformSpec) DeepCopy() *EgeriaPlatformSpec

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

func (*EgeriaPlatformSpec) DeepCopyInto

func (in *EgeriaPlatformSpec) DeepCopyInto(out *EgeriaPlatformSpec)

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

type EgeriaPlatformStatus

type EgeriaPlatformStatus struct {
	// Observed Egeria version from platform origin
	//TODO: Version - may be better via healthchecks
	Version string `json:"version,omitempty"`
	// list of server names that are active - this should match those configured
	Activeservers []string `json:"active,omitempty"`
	// Get info about the config being used
	ManagedService    string   `json:"service,omitempty"`
	ManagedDeployment string   `json:"deployment,omitempty"`
	Pods              []string `json:"pods,omitempty"`
}

EgeriaPlatformStatus : Observed state of Egeria Platform

func (*EgeriaPlatformStatus) DeepCopy

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

func (*EgeriaPlatformStatus) DeepCopyInto

func (in *EgeriaPlatformStatus) DeepCopyInto(out *EgeriaPlatformStatus)

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