Documentation
¶
Overview ¶
Go imports
Go imports ¶
Package v1 contains API Schema definitions for the v1 API group +kubebuilder:object:generate=true +groupName=tango.tango-controls.org
Index ¶
- Variables
- type DatabaseDS
- func (in *DatabaseDS) DeepCopy() *DatabaseDS
- func (in *DatabaseDS) DeepCopyInto(out *DatabaseDS)
- func (in *DatabaseDS) DeepCopyObject() runtime.Object
- func (r *DatabaseDS) Default()
- func (r *DatabaseDS) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DatabaseDS) ValidateCreate() error
- func (r *DatabaseDS) ValidateDelete() error
- func (r *DatabaseDS) ValidateUpdate(old runtime.Object) error
- type DatabaseDSList
- type DatabaseDSSpec
- type DatabaseDSStatus
- type DeviceServer
- func (in *DeviceServer) DeepCopy() *DeviceServer
- func (in *DeviceServer) DeepCopyInto(out *DeviceServer)
- func (in *DeviceServer) DeepCopyObject() runtime.Object
- func (r *DeviceServer) Default()
- func (r *DeviceServer) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DeviceServer) ValidateCreate() error
- func (r *DeviceServer) ValidateDelete() error
- func (r *DeviceServer) ValidateUpdate(old runtime.Object) error
- type DeviceServerList
- type DeviceServerSpec
- type DeviceServerStatus
Constants ¶
This section is empty.
Variables ¶
var (
// GroupVersion is group version used to register these objects
GroupVersion = schema.GroupVersion{Group: "tango.tango-controls.org", Version: "v1"}
// 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 DatabaseDS ¶
type DatabaseDS struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DatabaseDSSpec `json:"spec,omitempty"`
Status DatabaseDSStatus `json:"status,omitempty"`
}
DatabaseDS is the Schema for the databaseds API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Components",type="integer",JSONPath=".status.replicas",description="The number of Components Requested in the DatabaseDS",priority=0 +kubebuilder:printcolumn:name="Succeeded",type="integer",JSONPath=".status.succeeded",description="The number of Components Launched in the DatabaseDS",priority=0 +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The number of Components Requested in the DatabaseDS",priority=0 +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state",description="Status of the DatabaseDS",priority=0 +kubebuilder:printcolumn:name="TangoDB",type="string",JSONPath=".status.tangodb",description=" TangoDB details of the DatabaseDS",priority=1 +kubebuilder:printcolumn:name="DS",type="string",JSONPath=".status.ds",description=" DS details of the DatabaseDS",priority=1 +kubebuilder:printcolumn:name="Resources",type="string",JSONPath=".status.resources",description=" Resource details of the DatabaseDS",priority=1
func (*DatabaseDS) DeepCopy ¶
func (in *DatabaseDS) DeepCopy() *DatabaseDS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseDS.
func (*DatabaseDS) DeepCopyInto ¶
func (in *DatabaseDS) DeepCopyInto(out *DatabaseDS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatabaseDS) DeepCopyObject ¶
func (in *DatabaseDS) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DatabaseDS) Default ¶
func (r *DatabaseDS) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*DatabaseDS) SetupWebhookWithManager ¶
func (r *DatabaseDS) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*DatabaseDS) ValidateCreate ¶
func (r *DatabaseDS) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*DatabaseDS) ValidateDelete ¶
func (r *DatabaseDS) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*DatabaseDS) ValidateUpdate ¶
func (r *DatabaseDS) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type DatabaseDSList ¶
type DatabaseDSList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DatabaseDS `json:"items"`
}
DatabaseDSList contains a list of DatabaseDS
func (*DatabaseDSList) DeepCopy ¶
func (in *DatabaseDSList) DeepCopy() *DatabaseDSList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseDSList.
func (*DatabaseDSList) DeepCopyInto ¶
func (in *DatabaseDSList) DeepCopyInto(out *DatabaseDSList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatabaseDSList) DeepCopyObject ¶
func (in *DatabaseDSList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DatabaseDSSpec ¶
type DatabaseDSSpec struct {
// Enable Load Balancer for external access to DatabaseDS
// +optional
EnableLoadBalancer bool `json:"enableLoadBalancer,omitempty"`
// Disable Network Policies
// +optional
DisablePolicies bool `json:"disablepolicies,omitempty"`
// Enable the creation of a PV for the DatabaseDS
// +optional
UsePV bool `json:"usePV,omitempty"`
// DatabaseDS resource name that is the Tango DatabaseDS the DS will run as: optional, defaults to Name
DatabaseDS string `json:"databaseds,omitempty"`
// Source image to deploy DatabaseDS from - default: artefact.skao.int/ska-tango-images-tango-databaseds-alpine:0.3.0, registry.gitlab.com/tango-controls/docker/tango-db:5.16
DDSImage string `json:"dsimage,omitempty"`
// DatabaseDS TC config that get's loaded at DS boot - FQ file name, HTTP URL, or full config body .json: optional
Config string `json:"config,omitempty"`
// Source image to deploy Tango DB from - default: artefact.skao.int/ska-tango-images-tango-db:10.4.14, registry.gitlab.com/tango-controls/docker/mysql:5.16-mysql-8-1
DBImage string `json:"dbimage,omitempty"`
// Kubernetes cluster domain default cluster.local
//+kubebuilder:default=cluster.local
//+optional
ClusterDomain string `json:"clusterDomain,omitempty"`
// Pull Policy for image - default: IfNotPresent
//+optional
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// OmniOrb Port default 10000
//+kubebuilder:validation:Minimum=0
//+kubebuilder:default=10000
//+optional
Port int32 `json:"orbport,omitempty"`
// Tango DB DB name - default: tango
DBDb string `json:"dbdb,omitempty"`
// Tango DB Root Password - default: secret
DBRootPw string `json:"dbrootpw,omitempty"`
// Tango DB User - default: tango
DBUser string `json:"dbuser,omitempty"`
// Tango DB User Password - default: tango
DBPassword string `json:"dbpassword,omitempty"`
//TangoDB StorageClass - default: standard
//+optional
TangoDBStorageClass string `json:"tangoDBStorageClass,omitempty"`
// Specifies the Volumes.
//+optional
Volumes []corev1.Volume `json:"volumes,omitempty"`
// Specifies the VolumeMounts.
//+optional
VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
// Specifies the Environment variables.
//+optional
Env []corev1.EnvVar `json:"env,omitempty"`
// Specifies the Pull Secrets.
//+optional
PullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
// Specifies the NodeSelector configuration.
//+optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// Specifies the Affinity configuration.
//+optional
Affinity *corev1.Affinity `json:"affinity,omitempty"`
// Specifies the Toleration configuration.
//+optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// Specifies the Environment variables.
//+optional
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
}
DatabaseDSSpec defines the desired state of DatabaseDS
func (*DatabaseDSSpec) DeepCopy ¶
func (in *DatabaseDSSpec) DeepCopy() *DatabaseDSSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseDSSpec.
func (*DatabaseDSSpec) DeepCopyInto ¶
func (in *DatabaseDSSpec) DeepCopyInto(out *DatabaseDSSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseDSStatus ¶
type DatabaseDSStatus struct {
// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
// Important: Run "make" to regenerate code after modifying this file
Replicas int32 `json:"replicas"`
Succeeded int32 `json:"succeeded"`
State string `json:"state"`
Resources string `json:"resources"`
TangoDB string `json:"tangodb"`
DS string `json:"ds"`
}
DatabaseDSStatus defines the observed state of DatabaseDS
func (*DatabaseDSStatus) DeepCopy ¶
func (in *DatabaseDSStatus) DeepCopy() *DatabaseDSStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseDSStatus.
func (*DatabaseDSStatus) DeepCopyInto ¶
func (in *DatabaseDSStatus) DeepCopyInto(out *DatabaseDSStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceServer ¶
type DeviceServer struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DeviceServerSpec `json:"spec,omitempty"`
Status DeviceServerStatus `json:"status,omitempty"`
}
DeviceServer is the Schema for the deviceservers API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Components",type="integer",JSONPath=".status.replicas",description="The number of Components Requested in the DeviceServer",priority=0 +kubebuilder:printcolumn:name="Succeeded",type="integer",JSONPath=".status.succeeded",description="The number of Components Launched in the DeviceServer",priority=0 +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The number of Components Requested in the DeviceServer",priority=0 +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state",description="Status of the DeviceServer",priority=0 +kubebuilder:printcolumn:name="Resources",type="string",JSONPath=".status.resources",description=" Resource details of the DeviceServer",priority=1
func (*DeviceServer) DeepCopy ¶
func (in *DeviceServer) DeepCopy() *DeviceServer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceServer.
func (*DeviceServer) DeepCopyInto ¶
func (in *DeviceServer) DeepCopyInto(out *DeviceServer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeviceServer) DeepCopyObject ¶
func (in *DeviceServer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DeviceServer) Default ¶
func (r *DeviceServer) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*DeviceServer) SetupWebhookWithManager ¶
func (r *DeviceServer) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*DeviceServer) ValidateCreate ¶
func (r *DeviceServer) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*DeviceServer) ValidateDelete ¶
func (r *DeviceServer) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*DeviceServer) ValidateUpdate ¶
func (r *DeviceServer) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type DeviceServerList ¶
type DeviceServerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DeviceServer `json:"items"`
}
DeviceServerList contains a list of DeviceServer
func (*DeviceServerList) DeepCopy ¶
func (in *DeviceServerList) DeepCopy() *DeviceServerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceServerList.
func (*DeviceServerList) DeepCopyInto ¶
func (in *DeviceServerList) DeepCopyInto(out *DeviceServerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeviceServerList) DeepCopyObject ¶
func (in *DeviceServerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeviceServerSpec ¶
type DeviceServerSpec struct {
// Disable Network Policies
//+optional
DisablePolicies bool `json:"disablepolicies,omitempty"`
// DeviceServer databaseds resource name that is the Tango DatabaseDS the DeviceServer will run against: mandatory
DatabaseDS string `json:"databaseds"`
// External DeviceServer DNS name or IP address - must be supplied if ExternalDeviceServer is set
// Make the deviceServer an external device only - this will only deploy the Service type ExternalName and pass DS config to TangoDB
// +optional
ExternalDeviceServer string `json:"externalDeviceServer,omitempty"`
// Enable Load Balancer for external access to DatabaseDS
// +optional
EnableLoadBalancer bool `json:"enableLoadBalancer,omitempty"`
// Specify Direct Connection to TANGO_HOST in DatabaseDS config option
//+optional
DirectConnection bool `json:"directConnection,omitempty"`
// DeviceServer config for this job - FQ file name, HTTP URL, or full config body .json: mandatory
Config string `json:"config"`
// DeviceServer name: mandatory
DSName string `json:"dsname"`
// DeviceServer script for this job - FQ file name or full script body either .py or .ipynb: mandatory
//+optional
Script string `json:"script"`
// DeviceServer script for this job - FQ file name or full script body either .py or .ipynb: mandatory
//+optional
Command string `json:"command"`
// Arguments to pass to app boot - default:
Args string `json:"args,omitempty"`
// Source image to deploy cluster from - default: artefact.skao.int/ska-tango-images-tango-pytango-alpine:0.3.1
Image string `json:"image,omitempty"`
// Pull Policy for image - default: IfNotPresent
//+optional
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Specifies the DeviceServers that must be started before this one.
//+optional
DependsOn []string `json:"dependsOn,omitempty"`
// OmniOrb IP default false
//+kubebuilder:default=false
//+optional
LegacyCompatibility bool `json:"legacycompatibility,omitempty"`
// OmniOrb Port default 45450
//+kubebuilder:validation:Minimum=0
//+kubebuilder:default=45450
//+optional
OrbPort int32 `json:"orbport,omitempty"`
// ZMQ Heartbeat Port default 45460
//+kubebuilder:validation:Minimum=0
//+kubebuilder:default=45460
//+optional
HeartbeatPort int32 `json:"heartbeatport,omitempty"`
// Kubernetes cluster domain default cluster.local
//+kubebuilder:default=cluster.local
//+optional
ClusterDomain string `json:"clusterDomain,omitempty"`
// ZMQ Event Port default 45470
//+kubebuilder:validation:Minimum=0
//+kubebuilder:default=45470
//+optional
EventPort int32 `json:"eventport,omitempty"`
// Specifies the Volumes.
//+optional
Volumes []corev1.Volume `json:"volumes,omitempty"`
// Specifies the VolumeMounts.
//+optional
VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
// Specifies the Environment variables.
//+optional
Env []corev1.EnvVar `json:"env,omitempty"`
// Specifies the Pull Secrets.
//+optional
PullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
// Specifies the NodeSelector configuration.
//+optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// Specifies the Affinity configuration.
//+optional
Affinity *corev1.Affinity `json:"affinity,omitempty"`
// Specifies the Toleration configuration.
//+optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// Specifies the Environment variables.
//+optional
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
}
DeviceServerSpec defines the desired state of DeviceServer
func (*DeviceServerSpec) DeepCopy ¶
func (in *DeviceServerSpec) DeepCopy() *DeviceServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceServerSpec.
func (*DeviceServerSpec) DeepCopyInto ¶
func (in *DeviceServerSpec) DeepCopyInto(out *DeviceServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceServerStatus ¶
type DeviceServerStatus struct {
// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
// Important: Run "make" to regenerate code after modifying this file
Replicas int32 `json:"replicas"`
Succeeded int32 `json:"succeeded"`
State string `json:"state"`
Resources string `json:"resources"`
}
DeviceServerStatus defines the observed state of DeviceServer
func (*DeviceServerStatus) DeepCopy ¶
func (in *DeviceServerStatus) DeepCopy() *DeviceServerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceServerStatus.
func (*DeviceServerStatus) DeepCopyInto ¶
func (in *DeviceServerStatus) DeepCopyInto(out *DeviceServerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.