Documentation
¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the robot v1alpha2 API group +kubebuilder:object:generate=true +groupName=robot.roboscale.io
Index ¶
- Variables
- type LaunchContainer
- type OwnedPVCStatus
- type OwnedResourceStatus
- type OwnedStatefulSetStatus
- type ROS2Bridge
- func (in *ROS2Bridge) DeepCopy() *ROS2Bridge
- func (in *ROS2Bridge) DeepCopyInto(out *ROS2Bridge)
- func (in *ROS2Bridge) DeepCopyObject() runtime.Object
- func (r *ROS2Bridge) Default()
- func (ros2bridge *ROS2Bridge) GetROS2BridgeIngressMetadata() *types.NamespacedName
- func (ros2bridge *ROS2Bridge) GetROS2BridgePodMetadata() *types.NamespacedName
- func (ros2bridge *ROS2Bridge) GetROS2BridgeServiceMetadata() *types.NamespacedName
- func (r *ROS2Bridge) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ROS2Bridge) ValidateCreate() error
- func (r *ROS2Bridge) ValidateDelete() error
- func (r *ROS2Bridge) ValidateUpdate(old runtime.Object) error
- type ROS2BridgeInstanceStatus
- type ROS2BridgeList
- type ROS2BridgePhase
- type ROS2BridgeSpec
- type ROS2BridgeStatus
- type ROS2Workload
- func (in *ROS2Workload) DeepCopy() *ROS2Workload
- func (in *ROS2Workload) DeepCopyInto(out *ROS2Workload)
- func (in *ROS2Workload) DeepCopyObject() runtime.Object
- func (r *ROS2Workload) Default()
- func (ros2Workload *ROS2Workload) GetDiscoveryServerMetadata() *types.NamespacedName
- func (ros2Workload *ROS2Workload) GetPersistentVolumeClaimMetadata(key int) *types.NamespacedName
- func (ros2Workload *ROS2Workload) GetROS2BridgeMetadata() *types.NamespacedName
- func (ros2Workload *ROS2Workload) GetStatefulSetMetadata(key int) *types.NamespacedName
- func (r *ROS2Workload) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ROS2Workload) ValidateCreate() error
- func (r *ROS2Workload) ValidateDelete() error
- func (r *ROS2Workload) ValidateUpdate(old runtime.Object) error
- type ROS2WorkloadList
- type ROS2WorkloadPhase
- type ROS2WorkloadSpec
- type ROS2WorkloadStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "robot.roboscale.io", Version: "v1alpha2"} // 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 LaunchContainer ¶
type LaunchContainer struct {
// Replica number of the stateful set.
Replicas *int32 `json:"replicas"`
// Single container configuration for stateful set.
Container corev1.Container `json:"container,omitempty"`
}
func (*LaunchContainer) DeepCopy ¶
func (in *LaunchContainer) DeepCopy() *LaunchContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LaunchContainer.
func (*LaunchContainer) DeepCopyInto ¶
func (in *LaunchContainer) DeepCopyInto(out *LaunchContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OwnedPVCStatus ¶
type OwnedPVCStatus struct {
// Generic status for any owned resource.
Resource OwnedResourceStatus `json:"resource,omitempty"`
// Status of the ROS2Bridge instance.
Status corev1.PersistentVolumeClaimStatus `json:"status,omitempty"`
}
func (*OwnedPVCStatus) DeepCopy ¶
func (in *OwnedPVCStatus) DeepCopy() *OwnedPVCStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OwnedPVCStatus.
func (*OwnedPVCStatus) DeepCopyInto ¶
func (in *OwnedPVCStatus) DeepCopyInto(out *OwnedPVCStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OwnedResourceStatus ¶
type OwnedResourceStatus struct {
// Shows if the owned resource is created.
Created bool `json:"created"`
// Reference to the owned resource.
Reference corev1.ObjectReference `json:"reference,omitempty"`
// Phase of the owned resource.
Phase string `json:"phase,omitempty"`
}
Generic status for any owned resource.
func (*OwnedResourceStatus) DeepCopy ¶
func (in *OwnedResourceStatus) DeepCopy() *OwnedResourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OwnedResourceStatus.
func (*OwnedResourceStatus) DeepCopyInto ¶
func (in *OwnedResourceStatus) DeepCopyInto(out *OwnedResourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OwnedStatefulSetStatus ¶
type OwnedStatefulSetStatus struct {
// Generic status for any owned resource.
Resource OwnedResourceStatus `json:"resource,omitempty"`
// Status of the ROS2Bridge instance.
Status appsv1.StatefulSetStatus `json:"status,omitempty"`
// Container statuses.
ContainerStatuses []corev1.ContainerStatus `json:"containerStatuses,omitempty"`
}
func (*OwnedStatefulSetStatus) DeepCopy ¶
func (in *OwnedStatefulSetStatus) DeepCopy() *OwnedStatefulSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OwnedStatefulSetStatus.
func (*OwnedStatefulSetStatus) DeepCopyInto ¶
func (in *OwnedStatefulSetStatus) DeepCopyInto(out *OwnedStatefulSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROS2Bridge ¶
type ROS2Bridge struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Specification of the desired behavior of the ROS2Bridge.
Spec ROS2BridgeSpec `json:"spec,omitempty"`
// Most recently observed status of the ROS2Bridge.
Status ROS2BridgeStatus `json:"status,omitempty"`
}
ROS2Bridge is the Schema for the ros2bridges API
func (*ROS2Bridge) DeepCopy ¶
func (in *ROS2Bridge) DeepCopy() *ROS2Bridge
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2Bridge.
func (*ROS2Bridge) DeepCopyInto ¶
func (in *ROS2Bridge) DeepCopyInto(out *ROS2Bridge)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROS2Bridge) DeepCopyObject ¶
func (in *ROS2Bridge) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ROS2Bridge) Default ¶
func (r *ROS2Bridge) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*ROS2Bridge) GetROS2BridgeIngressMetadata ¶
func (ros2bridge *ROS2Bridge) GetROS2BridgeIngressMetadata() *types.NamespacedName
func (*ROS2Bridge) GetROS2BridgePodMetadata ¶
func (ros2bridge *ROS2Bridge) GetROS2BridgePodMetadata() *types.NamespacedName
func (*ROS2Bridge) GetROS2BridgeServiceMetadata ¶
func (ros2bridge *ROS2Bridge) GetROS2BridgeServiceMetadata() *types.NamespacedName
func (*ROS2Bridge) SetupWebhookWithManager ¶
func (r *ROS2Bridge) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*ROS2Bridge) ValidateCreate ¶
func (r *ROS2Bridge) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ROS2Bridge) ValidateDelete ¶
func (r *ROS2Bridge) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*ROS2Bridge) ValidateUpdate ¶
func (r *ROS2Bridge) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type ROS2BridgeInstanceStatus ¶
type ROS2BridgeInstanceStatus struct {
// Generic status for any owned resource.
Resource OwnedResourceStatus `json:"resource,omitempty"`
// Status of the ROS2Bridge instance.
Status ROS2BridgeStatus `json:"status,omitempty"`
// Address of the robot service that can be reached from outside.
Connection string `json:"connection,omitempty"`
}
func (*ROS2BridgeInstanceStatus) DeepCopy ¶
func (in *ROS2BridgeInstanceStatus) DeepCopy() *ROS2BridgeInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2BridgeInstanceStatus.
func (*ROS2BridgeInstanceStatus) DeepCopyInto ¶
func (in *ROS2BridgeInstanceStatus) DeepCopyInto(out *ROS2BridgeInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROS2BridgeList ¶
type ROS2BridgeList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ROS2Bridge `json:"items"`
}
ROS2BridgeList contains a list of ROS2Bridge
func (*ROS2BridgeList) DeepCopy ¶
func (in *ROS2BridgeList) DeepCopy() *ROS2BridgeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2BridgeList.
func (*ROS2BridgeList) DeepCopyInto ¶
func (in *ROS2BridgeList) DeepCopyInto(out *ROS2BridgeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROS2BridgeList) DeepCopyObject ¶
func (in *ROS2BridgeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ROS2BridgePhase ¶
type ROS2BridgePhase string
const ( ROS2BridgePhaseCreatingService ROS2BridgePhase = "CreatingService" ROS2BridgePhaseCreatingPod ROS2BridgePhase = "CreatingPod" ROS2BridgePhaseCreatingIngress ROS2BridgePhase = "CreatingIngress" ROS2BridgePhaseReady ROS2BridgePhase = "Ready" ROS2BridgePhaseDeletingPod ROS2BridgePhase = "DeletingPod" ROS2BridgePhaseDeletingService ROS2BridgePhase = "DeletingService" )
type ROS2BridgeSpec ¶
type ROS2BridgeSpec struct {
// Configurational parameters for ROS 2 bridge.
// +kubebuilder:validation:Required
Distro robotv1alpha1.ROSDistro `json:"distro"`
// Object reference to DiscoveryServer.
DiscoveryServerReference corev1.ObjectReference `json:"discoveryServerRef,omitempty"`
// Service type of ROS2Bridge. `ClusterIP` and `NodePort` is supported.
// +kubebuilder:validation:Enum=ClusterIP;NodePort
// +kubebuilder:default=ClusterIP
ServiceType corev1.ServiceType `json:"serviceType,omitempty"`
// ROS2Bridge will create an Ingress resource if `true`.
Ingress bool `json:"ingress,omitempty"`
// Name of the TLS secret.
TLSSecretName string `json:"tlsSecretName,omitempty"`
}
ROS2BridgeSpec defines the desired state of ROS2Bridge.
func (*ROS2BridgeSpec) DeepCopy ¶
func (in *ROS2BridgeSpec) DeepCopy() *ROS2BridgeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2BridgeSpec.
func (*ROS2BridgeSpec) DeepCopyInto ¶
func (in *ROS2BridgeSpec) DeepCopyInto(out *ROS2BridgeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROS2BridgeStatus ¶
type ROS2BridgeStatus struct {
// Phase of ROS2Bridge.
Phase ROS2BridgePhase `json:"phase,omitempty"`
// Connection info obtained from DiscoveryServer.
ConnectionInfo robotv1alpha1.ConnectionInfo `json:"connectionInfo,omitempty"`
// Status of ROS2Bridge pod.
PodStatus robotv1alpha1.OwnedResourceStatus `json:"podStatus,omitempty"`
// Status of ROS2Bridge service.
ServiceStatus robotv1alpha1.OwnedServiceStatus `json:"serviceStatus,omitempty"`
// Status of ROS2Bridge Ingress.
IngressStatus robotv1alpha1.OwnedResourceStatus `json:"ingressStatus,omitempty"`
}
ROS2BridgeStatus defines the observed state of ROS2Bridge.
func (*ROS2BridgeStatus) DeepCopy ¶
func (in *ROS2BridgeStatus) DeepCopy() *ROS2BridgeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2BridgeStatus.
func (*ROS2BridgeStatus) DeepCopyInto ¶
func (in *ROS2BridgeStatus) DeepCopyInto(out *ROS2BridgeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROS2Workload ¶
type ROS2Workload struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Specification of the desired behavior of the ROS2Workload.
Spec ROS2WorkloadSpec `json:"spec,omitempty"`
// Most recently observed status of the ROS2Workload.
Status ROS2WorkloadStatus `json:"status,omitempty"`
}
ROS2Workload is the Schema for the ros2workloads API
func (*ROS2Workload) DeepCopy ¶
func (in *ROS2Workload) DeepCopy() *ROS2Workload
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2Workload.
func (*ROS2Workload) DeepCopyInto ¶
func (in *ROS2Workload) DeepCopyInto(out *ROS2Workload)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROS2Workload) DeepCopyObject ¶
func (in *ROS2Workload) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ROS2Workload) Default ¶
func (r *ROS2Workload) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*ROS2Workload) GetDiscoveryServerMetadata ¶
func (ros2Workload *ROS2Workload) GetDiscoveryServerMetadata() *types.NamespacedName
func (*ROS2Workload) GetPersistentVolumeClaimMetadata ¶
func (ros2Workload *ROS2Workload) GetPersistentVolumeClaimMetadata(key int) *types.NamespacedName
func (*ROS2Workload) GetROS2BridgeMetadata ¶
func (ros2Workload *ROS2Workload) GetROS2BridgeMetadata() *types.NamespacedName
func (*ROS2Workload) GetStatefulSetMetadata ¶
func (ros2Workload *ROS2Workload) GetStatefulSetMetadata(key int) *types.NamespacedName
func (*ROS2Workload) SetupWebhookWithManager ¶
func (r *ROS2Workload) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*ROS2Workload) ValidateCreate ¶
func (r *ROS2Workload) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ROS2Workload) ValidateDelete ¶
func (r *ROS2Workload) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*ROS2Workload) ValidateUpdate ¶
func (r *ROS2Workload) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type ROS2WorkloadList ¶
type ROS2WorkloadList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ROS2Workload `json:"items"`
}
ROS2WorkloadList contains a list of ROS2Workload
func (*ROS2WorkloadList) DeepCopy ¶
func (in *ROS2WorkloadList) DeepCopy() *ROS2WorkloadList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2WorkloadList.
func (*ROS2WorkloadList) DeepCopyInto ¶
func (in *ROS2WorkloadList) DeepCopyInto(out *ROS2WorkloadList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROS2WorkloadList) DeepCopyObject ¶
func (in *ROS2WorkloadList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ROS2WorkloadPhase ¶
type ROS2WorkloadPhase string
const ( ROS2WorkloadPhaseCreatingDiscoveryServer ROS2WorkloadPhase = "CreatingDiscoveryServer" ROS2WorkloadPhaseCreatingROS2Bridge ROS2WorkloadPhase = "CreatingROS2Bridge" ROS2WorkloadPhaseCreatingPVCs ROS2WorkloadPhase = "CreatingPVCs" ROS2WorkloadPhaseCreatingStatefulSets ROS2WorkloadPhase = "CreatingStatefulSets" ROS2WorkloadPhaseReady ROS2WorkloadPhase = "Ready" )
type ROS2WorkloadSpec ¶
type ROS2WorkloadSpec struct {
// Discovery server configurational parameters.
// +kubebuilder:validation:Required
DiscoveryServerTemplate robotv1alpha1.DiscoveryServerSpec `json:"discoveryServerTemplate"`
// ROS 2 Bridge configurational parameters.
// +kubebuilder:validation:Required
ROS2BridgeTemplate ROS2BridgeSpec `json:"ros2BridgeTemplate,omitempty"`
// Volume templates for ROS 2 workload.
// For each volume template, operator will create a PersistentVolumeClaim
// that can be mounted to the ROS 2 workload.
VolumeClaimTemplates []corev1.PersistentVolumeClaimTemplate `json:"volumeClaimTemplates,omitempty"`
// Configurational parameters for containers that will be encapsulated within the ROS 2 workload StatefulSet.
LaunchContainers []LaunchContainer `json:"launchContainers,omitempty"`
}
ROS2WorkloadSpec defines the desired state of ROS2Workload.
func (*ROS2WorkloadSpec) DeepCopy ¶
func (in *ROS2WorkloadSpec) DeepCopy() *ROS2WorkloadSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2WorkloadSpec.
func (*ROS2WorkloadSpec) DeepCopyInto ¶
func (in *ROS2WorkloadSpec) DeepCopyInto(out *ROS2WorkloadSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROS2WorkloadStatus ¶
type ROS2WorkloadStatus struct {
// Phase of ROS2Workload. It sums the general status of ROS 2 workload(s).
Phase ROS2WorkloadPhase `json:"phase,omitempty"`
// Discovery server instance status.
DiscoveryServerStatus robotv1alpha1.DiscoveryServerInstanceStatus `json:"discoveryServerStatus,omitempty"`
// ROS 2 Bridge instance status.
ROS2BridgeStatus ROS2BridgeInstanceStatus `json:"ros2BridgeStatus,omitempty"`
// Statuses of owned PersistentVolumeClaims.
PVCStatuses []OwnedPVCStatus `json:"pvcStatuses,omitempty"`
// Status of owned StatefulSet and containers.
StatefulSetStatuses []OwnedStatefulSetStatus `json:"statefulSetStatuses,omitempty"`
}
ROS2WorkloadStatus defines the observed state of ROS2Workload.
func (*ROS2WorkloadStatus) DeepCopy ¶
func (in *ROS2WorkloadStatus) DeepCopy() *ROS2WorkloadStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROS2WorkloadStatus.
func (*ROS2WorkloadStatus) DeepCopyInto ¶
func (in *ROS2WorkloadStatus) DeepCopyInto(out *ROS2WorkloadStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.