v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Sep 20, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	CustomScriptsPath               = "/etc/custom"
	X11UnixPath                     = "/tmp/.X11-unix"
	HelpersPath                     = "/var/lib/robolaunch-helpers/"
	RequestUpdateAnnotationKey      = "lastUpdateRequest"
	RequestTerminationAnnotationKey = "lastTerminationRequest"

	SuperClientConfig = "<?xml version='1.0' encoding='UTF-8' ?>" +
		"<dds>" +
		"<profiles xmlns='http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles'>" +
		"<participant profile_name='super_client_profile' is_default_profile='true'>" +
		"<rtps>" +
		"		<builtin>" +
		"			<discovery_config>" +
		"				<discoveryProtocol>SUPER_CLIENT</discoveryProtocol>" +
		"				<discoveryServersList>" +
		"					<RemoteServer prefix='" + "%s" + "'>" +
		"						<metatrafficUnicastLocatorList>" +
		"							<locator>" +
		"								<udpv4>" +
		"								<address>" + "%s" + "</address>" +
		"									<port>11811</port>" +
		"								</udpv4>" +
		"							</locator>" +
		"						</metatrafficUnicastLocatorList>" +
		"					</RemoteServer>" +
		"				</discoveryServersList>" +
		"			</discovery_config>" +
		"		</builtin>" +
		"	</rtps>" +
		"</participant>" +
		"</profiles>" +
		"</dds>"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "robot.roboscale.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
)
View Source
var ContainerPostfixLength int = 4
View Source
var SchemeGroupVersion = GroupVersion

SchemeGroupVersion is group version used to register these objects.

Functions

func Bash

func Bash(command string) []string

func DefaultBridgeContainer

func DefaultBridgeContainer(r *RobotArtifact)

func DefaultCloudIDEContainer

func DefaultCloudIDEContainer(r *RobotArtifact)

func DefaultDistro

func DefaultDistro(r *RobotArtifact)

func DefaultFoxgloveContainer

func DefaultFoxgloveContainer(r *RobotArtifact)

func DefaultJobContainer

func DefaultJobContainer(r *RobotArtifact)

func DefaultNodeContainer

func DefaultNodeContainer(r *RobotArtifact)

func DefaultRepositoryPaths

func DefaultRepositoryPaths(r *Robot)

func DefaultStorageClasses

func DefaultStorageClasses(r *RobotArtifact)

func DefaultTrackerContainer

func DefaultTrackerContainer(r *RobotArtifact)

func DefaultVDIContainer

func DefaultVDIContainer(r *RobotArtifact)

func DefaultVDIResourceLimits

func DefaultVDIResourceLimits(r *Robot)

func Env

func Env(key string, value string) corev1.EnvVar

func GeneratePrelaunchCommandAsEnv

func GeneratePrelaunchCommandAsEnv(node Node, robotDef RobotDefinition, artifacts Artifacts) corev1.EnvVar

func GenerateRunCommandAsEnv

func GenerateRunCommandAsEnv(robot Robot, node Node) corev1.EnvVar

func GetCloneCommand

func GetCloneCommand(robotDef RobotDefinition, wsKey int) string

func GetCommonEnvironmentVariables

func GetCommonEnvironmentVariables(
	robotDef RobotDefinition,
) []corev1.EnvVar

func GetLaunchfilePathAbsolute

func GetLaunchfilePathAbsolute(workspacesPath string, wsName string, repoName string, lfRelativePath string) string

func GetLaunchfilePathAbsoluteFromNode

func GetLaunchfilePathAbsoluteFromNode(node Node, robotDef RobotDefinition) string

func GetNodeContainerEnvironmentVariables

func GetNodeContainerEnvironmentVariables(robotDef RobotDefinition, wsKey int) []corev1.EnvVar

func GetROSEnvironmentVariables

func GetROSEnvironmentVariables(
	robotDef RobotDefinition,
) []corev1.EnvVar

func GetTrackerEnvironmentVariables

func GetTrackerEnvironmentVariables(robotDef RobotDefinition) []corev1.EnvVar

func GetWorkspaceSourceFilePath

func GetWorkspaceSourceFilePath(workspacesPath string, wsName string, distro ROSDistro) string

func Resource

func Resource(resource string) schema.GroupResource

Types

type Action

type Action struct {
	// Name of the action.
	Name string `json:"name,omitempty"`
	// Type(s) of the action.
	Type []string `json:"type,omitempty"`
	// Client count of action.
	ClientCount int `json:"clientCount,omitempty"`
	// Client nodes of action.
	ClientNodes []ActionNodeInfo `json:"clientNodes,omitempty"`
	// Server count of action.
	ServerCount int `json:"serverCount,omitempty"`
	// Server nodes of action.
	ServerNodes []ActionNodeInfo `json:"serverNodes,omitempty"`
}

Action information.

func (*Action) DeepCopy

func (in *Action) DeepCopy() *Action

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

func (*Action) DeepCopyInto

func (in *Action) DeepCopyInto(out *Action)

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

type ActionData

type ActionData struct {
	// Response message from ROS client library.
	Message string `json:"message,omitempty"`
	// Last time the action data is updated.
	LastUpdateTimestamp string `json:"lastUpdateTimestamp,omitempty"`
	// Action list.
	ActionList []Action `json:"actionList,omitempty"`
}

Response of action request.

func (*ActionData) DeepCopy

func (in *ActionData) DeepCopy() *ActionData

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

func (*ActionData) DeepCopyInto

func (in *ActionData) DeepCopyInto(out *ActionData)

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

type ActionNodeInfo

type ActionNodeInfo struct {
	// Name of the node.
	Name string `json:"name,omitempty"`
	// Type of the action.
	Type string `json:"type,omitempty"`
}

func (*ActionNodeInfo) DeepCopy

func (in *ActionNodeInfo) DeepCopy() *ActionNodeInfo

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

func (*ActionNodeInfo) DeepCopyInto

func (in *ActionNodeInfo) DeepCopyInto(out *ActionNodeInfo)

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

type ActionStatus

type ActionStatus struct {
	// Indicates whether RobotAction resource is created or not.
	Created bool `json:"created,omitempty"`
	// Reference to the RobotTopic resource.
	Reference RobotDataTypeReference `json:"reference,omitempty"`
}

Abstract status of owned resource RobotAction.

func (*ActionStatus) DeepCopy

func (in *ActionStatus) DeepCopy() *ActionStatus

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

func (*ActionStatus) DeepCopyInto

func (in *ActionStatus) DeepCopyInto(out *ActionStatus)

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

type ArtifactReference

type ArtifactReference struct {
	// Robot artifact object namespace.
	Namespace string `json:"namespace,omitempty"`
	// Robot artifact object name.
	Name string `json:"name,omitempty"`
}

func (*ArtifactReference) DeepCopy

func (in *ArtifactReference) DeepCopy() *ArtifactReference

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

func (*ArtifactReference) DeepCopyInto

func (in *ArtifactReference) DeepCopyInto(out *ArtifactReference)

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

type ArtifactStatus

type ArtifactStatus struct {
	Created bool `json:"created,omitempty"`
}

func (*ArtifactStatus) DeepCopy

func (in *ArtifactStatus) DeepCopy() *ArtifactStatus

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

func (*ArtifactStatus) DeepCopyInto

func (in *ArtifactStatus) DeepCopyInto(out *ArtifactStatus)

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

type Artifacts

type Artifacts struct {
	// Image and package manager selection for ROS distro.
	ROS ROS `json:"robot,omitempty"`
	// Storage class selection for robot's volumes.
	StorageClassConfigs StorageClassConfigs `json:"storageClassConfigs,omitempty"`
	// Container artifacts of jobs such as cloning and building.
	JobContainer ContainerArtifact `json:"rosContainer,omitempty"`
	// Container artifacts of Cloud IDE container.
	CloudIDEContainer ContainerArtifact `json:"cloudIDEContainer,omitempty"`
	// Container artifacts of ROS tracker container.
	TrackerContainer ContainerArtifact `json:"trackerContainer,omitempty"`
	// Container artifacts of ROS bridge container.
	BridgeContainer ContainerArtifact `json:"bridgeContainer,omitempty"`
	// Container artifacts of Foxglove container.
	FoxgloveContainer ContainerArtifact `json:"foxgloveContainer,omitempty"`
	// Container artifacts of VDI container.
	VDIContainer ContainerArtifact `json:"vdiContainer,omitempty"`
	// Container artifacts of ROS node containers.
	NodeContainer ContainerArtifact `json:"nodeContainer,omitempty"`
}

Artifacts of robot.

func (*Artifacts) DeepCopy

func (in *Artifacts) DeepCopy() *Artifacts

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

func (*Artifacts) DeepCopyInto

func (in *Artifacts) DeepCopyInto(out *Artifacts)

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

type BuildStatus

type BuildStatus struct {
	Created bool             `json:"created,omitempty"`
	Status  RobotBuildStatus `json:"status,omitempty"`
}

func (*BuildStatus) DeepCopy

func (in *BuildStatus) DeepCopy() *BuildStatus

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

func (*BuildStatus) DeepCopyInto

func (in *BuildStatus) DeepCopyInto(out *BuildStatus)

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

type BuilderImage

type BuilderImage string

type CloneJobStatus

type CloneJobStatus struct {
	Created bool     `json:"created,omitempty"`
	Phase   JobPhase `json:"phase,omitempty"`
}

func (*CloneJobStatus) DeepCopy

func (in *CloneJobStatus) DeepCopy() *CloneJobStatus

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

func (*CloneJobStatus) DeepCopyInto

func (in *CloneJobStatus) DeepCopyInto(out *CloneJobStatus)

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

type CloneStatus

type CloneStatus struct {
	Created bool             `json:"created,omitempty"`
	Status  RobotCloneStatus `json:"status,omitempty"`
}

func (*CloneStatus) DeepCopy

func (in *CloneStatus) DeepCopy() *CloneStatus

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

func (*CloneStatus) DeepCopyInto

func (in *CloneStatus) DeepCopyInto(out *CloneStatus)

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

type ConfigStatus

type ConfigStatus struct {
	Created bool              `json:"created,omitempty"`
	Status  RobotConfigStatus `json:"status,omitempty"`
}

func (*ConfigStatus) DeepCopy

func (in *ConfigStatus) DeepCopy() *ConfigStatus

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

func (*ConfigStatus) DeepCopyInto

func (in *ConfigStatus) DeepCopyInto(out *ConfigStatus)

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

type Container

type Container struct {
	Name  string         `json:"name,omitempty"`
	State ContainerState `json:"phase,omitempty"`
}

func (*Container) DeepCopy

func (in *Container) DeepCopy() *Container

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

func (*Container) DeepCopyInto

func (in *Container) DeepCopyInto(out *Container)

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

type ContainerArtifact

type ContainerArtifact struct {
	// Name of container.
	Name string `json:"name,omitempty"`
	// Image of container.
	Image string `json:"image,omitempty"`
	// Open ports of container. Map keys should match the name of the container.
	Ports map[string]corev1.ContainerPort `json:"ports,omitempty"`
	// Entrypoint of container.
	Entrypoint []string `json:"entrypoint,omitempty"`
	// Environment variables of container.
	Env []corev1.EnvVar `json:"env,omitempty"`
}

Interface for container artifacts of robolaunch. It's used to create containers for applications such as ROS tracker, Cloud IDE and ROS nodes.

func (*ContainerArtifact) DeepCopy

func (in *ContainerArtifact) DeepCopy() *ContainerArtifact

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

func (*ContainerArtifact) DeepCopyInto

func (in *ContainerArtifact) DeepCopyInto(out *ContainerArtifact)

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

type ContainerState

type ContainerState string
const (
	ContainerStateRunning    ContainerState = "Running"
	ContainerStateTerminated ContainerState = "Terminated"
	ContainerStateWaiting    ContainerState = "Waiting"
)

type DataExport

type DataExport struct {
	// Robot's node data export configuration.
	Nodes TypeExport `json:"nodes,omitempty"`
	// Robot's topic data export configuration.
	Topics TypeExport `json:"topics,omitempty"`
	// Robot's service data export configuration.
	Services TypeExport `json:"services,omitempty"`
	// Robot's action data export configuration.
	Actions TypeExport `json:"actions,omitempty"`
}

Data export configuration.

func (*DataExport) DeepCopy

func (in *DataExport) DeepCopy() *DataExport

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

func (*DataExport) DeepCopyInto

func (in *DataExport) DeepCopyInto(out *DataExport)

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

type DataStatus

type DataStatus struct {
	Created bool `json:"created,omitempty"`
}

func (*DataStatus) DeepCopy

func (in *DataStatus) DeepCopy() *DataStatus

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

func (*DataStatus) DeepCopyInto

func (in *DataStatus) DeepCopyInto(out *DataStatus)

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

type DiscoveryServer

type DiscoveryServer struct {
	// Option for discovery server connection.
	Enabled bool `json:"enabled,omitempty"`
	// GUID of discovery server.
	GUID string `json:"guid,omitempty"`
	// Specifies the cluster that discovery server is located. Connection string will be mutated if discovery server
	// is located to the same cluster with the robot or not. (because of DNS resolving)
	Cluster string `json:"cluster,omitempty"`
	// Hostname of discovery server.
	Hostname string `json:"hostname,omitempty"`
	// Subdomain of discovery server.
	Subdomain string `json:"subdomain,omitempty"`
}

Configuration for discovery server connection of a robot.

func (*DiscoveryServer) DeepCopy

func (in *DiscoveryServer) DeepCopy() *DiscoveryServer

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

func (*DiscoveryServer) DeepCopyInto

func (in *DiscoveryServer) DeepCopyInto(out *DiscoveryServer)

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

type Etc

type Etc struct {
	Created bool `json:"created,omitempty"`
}

func (*Etc) DeepCopy

func (in *Etc) DeepCopy() *Etc

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

func (*Etc) DeepCopyInto

func (in *Etc) DeepCopyInto(out *Etc)

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

type JobPhase

type JobPhase string
const (
	JobActive    JobPhase = "Active"
	JobSucceeded JobPhase = "Succeeded"
	JobFailed    JobPhase = "Failed"
)

type K8sNodeInfo

type K8sNodeInfo struct {
	Name   string `json:"name,omitempty"`
	HasGPU bool   `json:"hasGPU,omitempty"`
}

func (*K8sNodeInfo) DeepCopy

func (in *K8sNodeInfo) DeepCopy() *K8sNodeInfo

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

func (*K8sNodeInfo) DeepCopyInto

func (in *K8sNodeInfo) DeepCopyInto(out *K8sNodeInfo)

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

type Launch

type Launch struct {
	// Additional environment variables to set when launching ROS nodes.
	Env []corev1.EnvVar `json:"env,omitempty"`
	// Path to launchfile in repository. (eg. `linorobot/linorobot_gazebo/launch.py`)
	// +kubebuilder:validation:Required
	LaunchFilePath string `json:"launchFilePath"`
	// Launch parameters.
	Parameters map[string]string `json:"parameters,omitempty"`
	// Command or script to run just before node's execution.
	Prelaunch Prelaunch `json:"prelaunch,omitempty"`
}

Launch description of a repository.

func (*Launch) DeepCopy

func (in *Launch) DeepCopy() *Launch

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

func (*Launch) DeepCopyInto

func (in *Launch) DeepCopyInto(out *Launch)

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

type LaunchPodStatus

type LaunchPodStatus struct {
	Created bool            `json:"created,omitempty"`
	Phase   corev1.PodPhase `json:"phase,omitempty"`
	IP      string          `json:"ip,omitempty"`
}

func (*LaunchPodStatus) DeepCopy

func (in *LaunchPodStatus) DeepCopy() *LaunchPodStatus

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

func (*LaunchPodStatus) DeepCopyInto

func (in *LaunchPodStatus) DeepCopyInto(out *LaunchPodStatus)

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

type LaunchStatus

type LaunchStatus struct {
	Created bool              `json:"created,omitempty"`
	Status  RobotLaunchStatus `json:"status,omitempty"`
}

func (*LaunchStatus) DeepCopy

func (in *LaunchStatus) DeepCopy() *LaunchStatus

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

func (*LaunchStatus) DeepCopyInto

func (in *LaunchStatus) DeepCopyInto(out *LaunchStatus)

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

type LoaderJobStatus

type LoaderJobStatus struct {
	Created bool     `json:"created,omitempty"`
	Phase   JobPhase `json:"phase,omitempty"`
}

func (*LoaderJobStatus) DeepCopy

func (in *LoaderJobStatus) DeepCopy() *LoaderJobStatus

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

func (*LoaderJobStatus) DeepCopyInto

func (in *LoaderJobStatus) DeepCopyInto(out *LoaderJobStatus)

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

type NameTypeInfo

type NameTypeInfo struct {
	// Name of the object.
	Name string `json:"name,omitempty"`
	// Type(s) of the object.
	Type []string `json:"type,omitempty"`
}

func (*NameTypeInfo) DeepCopy

func (in *NameTypeInfo) DeepCopy() *NameTypeInfo

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

func (*NameTypeInfo) DeepCopyInto

func (in *NameTypeInfo) DeepCopyInto(out *NameTypeInfo)

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

type Node

type Node struct {
	NodeID     string   `json:"nodeID,omitempty"`
	Type       NodeType `json:"nodeType,omitempty"`
	Package    string   `json:"package,omitempty"`
	Executable string   `json:"executable,omitempty"`
	Index      int      `json:"index,omitempty"`

	WorkspaceKey     int               `json:"workspaceKey,omitempty"`
	RepositoryKey    int               `json:"repositoryKey,omitempty"`
	LaunchParameters map[string]string `json:"launchParameters,omitempty"`

	Env       []corev1.EnvVar `json:"env,omitempty"`
	Container Container       `json:"container,omitempty"`
	Activated bool            `json:"activated,omitempty"`
}

func (*Node) DeepCopy

func (in *Node) DeepCopy() *Node

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

func (*Node) DeepCopyInto

func (in *Node) DeepCopyInto(out *Node)

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

type NodeData

type NodeData struct {
	// Response message from ROS client library.
	Message string `json:"message,omitempty"`
	// Last time the node data is updated.
	LastUpdateTimestamp string `json:"lastUpdateTimestamp,omitempty"`
	// Node list.
	NodeList []ROSNode `json:"nodeList,omitempty"`
}

Response of node request.

func (*NodeData) DeepCopy

func (in *NodeData) DeepCopy() *NodeData

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

func (*NodeData) DeepCopyInto

func (in *NodeData) DeepCopyInto(out *NodeData)

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

type NodeRequest

type NodeRequest struct {
	Successful bool   `json:"successful,omitempty"`
	Nodes      []Node `json:"nodes,omitempty"`
}

func (*NodeRequest) DeepCopy

func (in *NodeRequest) DeepCopy() *NodeRequest

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

func (*NodeRequest) DeepCopyInto

func (in *NodeRequest) DeepCopyInto(out *NodeRequest)

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

type NodeRequests

type NodeRequests struct {
	LastUpdateRequest      string `json:"lastUpdateRequest,omitempty"`
	LastTerminationRequest string `json:"lastTerminationRequest,omitempty"`
}

func (*NodeRequests) DeepCopy

func (in *NodeRequests) DeepCopy() *NodeRequests

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

func (*NodeRequests) DeepCopyInto

func (in *NodeRequests) DeepCopyInto(out *NodeRequests)

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

type NodeRequirements

type NodeRequirements struct {
	Fetched bool   `json:"fetched,omitempty"`
	Nodes   []Node `json:"nodes,omitempty"`
}

func (*NodeRequirements) DeepCopy

func (in *NodeRequirements) DeepCopy() *NodeRequirements

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

func (*NodeRequirements) DeepCopyInto

func (in *NodeRequirements) DeepCopyInto(out *NodeRequirements)

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

type NodeStatus

type NodeStatus struct {
	// Indicates whether RobotNode resource is created or not.
	Created bool `json:"created,omitempty"`
	// Reference to the RobotTopic resource.
	Reference RobotDataTypeReference `json:"reference,omitempty"`
}

Abstract status of owned resource RobotNode.

func (*NodeStatus) DeepCopy

func (in *NodeStatus) DeepCopy() *NodeStatus

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

func (*NodeStatus) DeepCopyInto

func (in *NodeStatus) DeepCopyInto(out *NodeStatus)

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

type NodeSummary

type NodeSummary struct {
	// Name of the ROS node.
	NodeName string `json:"nodeName,omitempty"`
	// ROS namespace of the ROS node.
	NodeNamespace string `json:"nodeNamespace,omitempty"`
}

ROS node metadata.

func (*NodeSummary) DeepCopy

func (in *NodeSummary) DeepCopy() *NodeSummary

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

func (*NodeSummary) DeepCopyInto

func (in *NodeSummary) DeepCopyInto(out *NodeSummary)

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

type NodeType

type NodeType string
const (
	NodeTypeProcess NodeType = "process"
	NodeTypeNode    NodeType = "node"
)

type Opt

type Opt struct {
	Created bool `json:"created,omitempty"`
}

func (*Opt) DeepCopy

func (in *Opt) DeepCopy() *Opt

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

func (*Opt) DeepCopyInto

func (in *Opt) DeepCopyInto(out *Opt)

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

type Prelaunch

type Prelaunch struct {
	// Bash command to run before ROS node execution.
	// +kubebuilder:validation:Required
	Command string `json:"command"`
}

Prelaunch command or script is applied just before the node is started.

func (*Prelaunch) DeepCopy

func (in *Prelaunch) DeepCopy() *Prelaunch

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

func (*Prelaunch) DeepCopyInto

func (in *Prelaunch) DeepCopyInto(out *Prelaunch)

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

type RBACConfigStatus

type RBACConfigStatus struct {
	Created bool           `json:"created,omitempty"`
	Phase   RobotRBACPhase `json:"phase,omitempty"`
}

func (*RBACConfigStatus) DeepCopy

func (in *RBACConfigStatus) DeepCopy() *RBACConfigStatus

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

func (*RBACConfigStatus) DeepCopyInto

func (in *RBACConfigStatus) DeepCopyInto(out *RBACConfigStatus)

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

type RBACResourceStatus

type RBACResourceStatus struct {
	// Indicates if RBAC resource is created.
	Created bool `json:"created,omitempty"`
	// Name reference of the RBAC Resource.
	Name string `json:"name,omitempty"`
}

RBAC resource information.

func (*RBACResourceStatus) DeepCopy

func (in *RBACResourceStatus) DeepCopy() *RBACResourceStatus

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

func (*RBACResourceStatus) DeepCopyInto

func (in *RBACResourceStatus) DeepCopyInto(out *RBACResourceStatus)

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

type ROS

type ROS struct {
	// Builder image of ROS environment. Image must contain a ROS distro and helper tools.
	BuilderImage BuilderImage `json:"builderImage"`
	// ROS package manager.
	// Use `catkin` for ROS and `colcon` for ROS 2 distros.
	ROSPackageManager ROSPackageManager `json:"rosPackageManager,omitempty"`
}

ROS builder image and package manager. (colcon or catkin)

func (*ROS) DeepCopy

func (in *ROS) DeepCopy() *ROS

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

func (*ROS) DeepCopyInto

func (in *ROS) DeepCopyInto(out *ROS)

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

type ROSDistro

type ROSDistro string

ROS distro selection. Allowed distros are Foxy and Galactic. It is aimed to support Humble, Melodic and Noetic in further versions. +kubebuilder:validation:Enum=foxy;galactic

const (
	// ROS Melodic Morenia
	ROSDistroMelodic ROSDistro = "melodic"
	// ROS Noetic Ninjemys
	ROSDistroNoetic ROSDistro = "noetic"
	// ROS Foxy Fitzroy
	ROSDistroFoxy ROSDistro = "foxy"
	// ROS Galactic Geochelone
	ROSDistroGalactic ROSDistro = "galactic"
)

type ROSNode

type ROSNode struct {
	// Name of the node.
	Name string `json:"name,omitempty"`
	// Namespace of the node.
	Namespace string `json:"namespace,omitempty"`
	// Subscriber nodes.
	Subscribers []NameTypeInfo `json:"subscribers,omitempty"`
	// Publisher nodes.
	Publisher []NameTypeInfo `json:"publishers,omitempty"`
	// Service server nodes.
	ServiceServers []NameTypeInfo `json:"serviceServers,omitempty"`
	// Service client nodes.
	ServiceClients []NameTypeInfo `json:"serviceClients,omitempty"`
	// Action server nodes.
	ActionServers []NameTypeInfo `json:"actionServers,omitempty"`
	// Action client nodes.
	ActionClients []NameTypeInfo `json:"actionClients,omitempty"`
}

Node information.

func (*ROSNode) DeepCopy

func (in *ROSNode) DeepCopy() *ROSNode

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

func (*ROSNode) DeepCopyInto

func (in *ROSNode) DeepCopyInto(out *ROSNode)

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

type ROSPackageManager

type ROSPackageManager string

+kubebuilder:validation:Enum=catkin;colcon

const (
	ROSPackageManagerROS1 ROSPackageManager = "catkin"
	ROSPackageManagerROS2 ROSPackageManager = "colcon"
)

type ROSVolumes

type ROSVolumes struct {
	Var     Var     `json:"var,omitempty"`
	Opt     Opt     `json:"opt,omitempty"`
	Usr     Usr     `json:"usr,omitempty"`
	Etc     Etc     `json:"etc,omitempty"`
	X11Unix X11Unix `json:"x11Unix,omitempty"`
}

func (*ROSVolumes) DeepCopy

func (in *ROSVolumes) DeepCopy() *ROSVolumes

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

func (*ROSVolumes) DeepCopyInto

func (in *ROSVolumes) DeepCopyInto(out *ROSVolumes)

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

type Repository

type Repository struct {
	// Name of the repository.
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// Base URL of the repository.
	// +kubebuilder:validation:Required
	URL string `json:"url"`
	// Branch of the repository to clone.
	// +kubebuilder:validation:Required
	Branch string `json:"branch"`
	// [Optional] Launch description of the repository.
	Launch Launch `json:"launch,omitempty"`
	// [Autofilled] Absolute path of repository
	Path string `json:"path,omitempty"`
}

Repository description.

func (*Repository) DeepCopy

func (in *Repository) DeepCopy() *Repository

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

func (*Repository) DeepCopyInto

func (in *Repository) DeepCopyInto(out *Repository)

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

type Robot

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

	Spec   RobotSpec   `json:"spec,omitempty"`
	Status RobotStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Distro",type=string,JSONPath=`.spec.robot.distro` +kubebuilder:printcolumn:name="Mode",type=string,JSONPath=`.spec.robot.mode` +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.spec.robot.state` +kubebuilder:printcolumn:name="Phase",type=string,JSONPath=`.status.phase` +genclient

func (*Robot) DeepCopy

func (in *Robot) DeepCopy() *Robot

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

func (*Robot) DeepCopyInto

func (in *Robot) DeepCopyInto(out *Robot)

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

func (*Robot) DeepCopyObject

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

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

func (*Robot) Default

func (r *Robot) Default()

func (*Robot) GetRobotArtifactMetadata

func (robot *Robot) GetRobotArtifactMetadata() *types.NamespacedName

func (*Robot) GetRobotBuildMetadata

func (robot *Robot) GetRobotBuildMetadata() *types.NamespacedName

func (*Robot) GetRobotCloneMetadata

func (robot *Robot) GetRobotCloneMetadata() *types.NamespacedName

func (*Robot) GetRobotConfigMetadata

func (robot *Robot) GetRobotConfigMetadata() *types.NamespacedName

func (*Robot) GetRobotDataMetadata

func (robot *Robot) GetRobotDataMetadata() *types.NamespacedName

func (*Robot) GetRobotRuntimeMetadata

func (robot *Robot) GetRobotRuntimeMetadata() *types.NamespacedName

func (*Robot) GetRobotToolsMetadata

func (robot *Robot) GetRobotToolsMetadata() *types.NamespacedName

func (*Robot) SetupWebhookWithManager

func (r *Robot) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Robot) ValidateCreate

func (r *Robot) ValidateCreate() error

func (*Robot) ValidateDelete

func (r *Robot) ValidateDelete() error

func (*Robot) ValidateUpdate

func (r *Robot) ValidateUpdate(old runtime.Object) error

type RobotAction

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

	Data ActionData      `json:"data,omitempty"`
	Spec RobotActionSpec `json:"spec,omitempty"`
}

RobotAction is the Schema for the robotactions API

func (*RobotAction) DeepCopy

func (in *RobotAction) DeepCopy() *RobotAction

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

func (*RobotAction) DeepCopyInto

func (in *RobotAction) DeepCopyInto(out *RobotAction)

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

func (*RobotAction) DeepCopyObject

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

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

type RobotActionList

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

RobotActionList contains a list of RobotAction

func (*RobotActionList) DeepCopy

func (in *RobotActionList) DeepCopy() *RobotActionList

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

func (*RobotActionList) DeepCopyInto

func (in *RobotActionList) DeepCopyInto(out *RobotActionList)

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

func (*RobotActionList) DeepCopyObject

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

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

type RobotActionSpec

type RobotActionSpec struct {
	// Update frequency of action information.
	UpdateFrequency string `json:"updateFrequency,omitempty"`
}

RobotActionSpec defines the desired state of RobotAction

func (*RobotActionSpec) DeepCopy

func (in *RobotActionSpec) DeepCopy() *RobotActionSpec

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

func (*RobotActionSpec) DeepCopyInto

func (in *RobotActionSpec) DeepCopyInto(out *RobotActionSpec)

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

type RobotArtifact

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

	Artifacts Artifacts       `json:"artifacts,omitempty"`
	Robot     RobotDefinition `json:"robot,omitempty"`
}

RobotArtifact is the Schema for the robotartifacts API

func (*RobotArtifact) DeepCopy

func (in *RobotArtifact) DeepCopy() *RobotArtifact

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

func (*RobotArtifact) DeepCopyInto

func (in *RobotArtifact) DeepCopyInto(out *RobotArtifact)

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

func (*RobotArtifact) DeepCopyObject

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

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

func (*RobotArtifact) Default

func (r *RobotArtifact) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*RobotArtifact) SetupWebhookWithManager

func (r *RobotArtifact) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RobotArtifact) ValidateCreate

func (r *RobotArtifact) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RobotArtifact) ValidateDelete

func (r *RobotArtifact) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RobotArtifact) ValidateUpdate

func (r *RobotArtifact) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RobotArtifactList

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

RobotArtifactList contains a list of RobotArtifact

func (*RobotArtifactList) DeepCopy

func (in *RobotArtifactList) DeepCopy() *RobotArtifactList

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

func (*RobotArtifactList) DeepCopyInto

func (in *RobotArtifactList) DeepCopyInto(out *RobotArtifactList)

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

func (*RobotArtifactList) DeepCopyObject

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

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

type RobotBuild

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

	Spec   RobotBuildSpec   `json:"spec,omitempty"`
	Status RobotBuildStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status

func (*RobotBuild) DeepCopy

func (in *RobotBuild) DeepCopy() *RobotBuild

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

func (*RobotBuild) DeepCopyInto

func (in *RobotBuild) DeepCopyInto(out *RobotBuild)

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

func (*RobotBuild) DeepCopyObject

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

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

func (*RobotBuild) GetConfigMapMetadata

func (robotruntime *RobotBuild) GetConfigMapMetadata() *types.NamespacedName

func (*RobotBuild) GetOwnerMetadata

func (robotruntime *RobotBuild) GetOwnerMetadata() *types.NamespacedName

type RobotBuildList

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

+kubebuilder:object:root=true

func (*RobotBuildList) DeepCopy

func (in *RobotBuildList) DeepCopy() *RobotBuildList

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

func (*RobotBuildList) DeepCopyInto

func (in *RobotBuildList) DeepCopyInto(out *RobotBuildList)

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

func (*RobotBuildList) DeepCopyObject

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

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

type RobotBuildPhase

type RobotBuildPhase string
const (
	RobotBuildPhaseCreatingConfigMap RobotBuildPhase = "CreatingConfigMap"
	RobotBuildPhaseBuildingRobot     RobotBuildPhase = "BuildingRobot"
	RobotBuildPhaseReady             RobotBuildPhase = "Ready"
	RobotBuildPhaseMalfunctioned     RobotBuildPhase = "Malfunctioned"
)

type RobotBuildSpec

type RobotBuildSpec struct {
	Steps []Step `json:"steps,omitempty"`
}

func (*RobotBuildSpec) DeepCopy

func (in *RobotBuildSpec) DeepCopy() *RobotBuildSpec

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

func (*RobotBuildSpec) DeepCopyInto

func (in *RobotBuildSpec) DeepCopyInto(out *RobotBuildSpec)

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

type RobotBuildStatus

type RobotBuildStatus struct {
	ScriptConfigMapStatus ScriptConfigMapStatus `json:"scriptConfigMapStatus,omitempty"`
	Steps                 map[string]StepStatus `json:"steps,omitempty"`

	Phase RobotBuildPhase `json:"phase,omitempty"`
}

func (*RobotBuildStatus) DeepCopy

func (in *RobotBuildStatus) DeepCopy() *RobotBuildStatus

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

func (*RobotBuildStatus) DeepCopyInto

func (in *RobotBuildStatus) DeepCopyInto(out *RobotBuildStatus)

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

type RobotClone

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

	Spec   RobotCloneSpec   `json:"spec,omitempty"`
	Status RobotCloneStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status

func (*RobotClone) DeepCopy

func (in *RobotClone) DeepCopy() *RobotClone

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

func (*RobotClone) DeepCopyInto

func (in *RobotClone) DeepCopyInto(out *RobotClone)

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

func (*RobotClone) DeepCopyObject

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

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

func (*RobotClone) GetCloneJobMetadata

func (robotclone *RobotClone) GetCloneJobMetadata() *types.NamespacedName

func (*RobotClone) GetOwnerMetadata

func (robotclone *RobotClone) GetOwnerMetadata() *types.NamespacedName

func (*RobotClone) GetPVCWorkspaceMetadata

func (robotclone *RobotClone) GetPVCWorkspaceMetadata() *types.NamespacedName

type RobotCloneList

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

+kubebuilder:object:root=true

func (*RobotCloneList) DeepCopy

func (in *RobotCloneList) DeepCopy() *RobotCloneList

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

func (*RobotCloneList) DeepCopyInto

func (in *RobotCloneList) DeepCopyInto(out *RobotCloneList)

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

func (*RobotCloneList) DeepCopyObject

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

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

type RobotClonePhase

type RobotClonePhase string
const (
	RobotClonePhaseCreatingWorkspace   RobotClonePhase = "CreatingWorkspace"
	RobotClonePhaseCloningRepositories RobotClonePhase = "CloningRepositories"
	RobotClonePhaseFailed              RobotClonePhase = "Failed"
	RobotClonePhaseReady               RobotClonePhase = "Ready"

	RobotClonePhaseMalfunctioned RobotClonePhase = "Malfunctioned"
)

type RobotCloneSpec

type RobotCloneSpec struct {
}

func (*RobotCloneSpec) DeepCopy

func (in *RobotCloneSpec) DeepCopy() *RobotCloneSpec

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

func (*RobotCloneSpec) DeepCopyInto

func (in *RobotCloneSpec) DeepCopyInto(out *RobotCloneSpec)

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

type RobotCloneStatus

type RobotCloneStatus struct {
	WorkspaceStatus WorkspaceStatus `json:"workspaceStatus,omitempty"`
	CloneJobStatus  CloneJobStatus  `json:"cloneJobStatus,omitempty"`
	Phase           RobotClonePhase `json:"phase,omitempty"`
}

func (*RobotCloneStatus) DeepCopy

func (in *RobotCloneStatus) DeepCopy() *RobotCloneStatus

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

func (*RobotCloneStatus) DeepCopyInto

func (in *RobotCloneStatus) DeepCopyInto(out *RobotCloneStatus)

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

type RobotConfig

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

	Spec   RobotConfigSpec   `json:"spec,omitempty"`
	Status RobotConfigStatus `json:"status,omitempty"`
}

func (*RobotConfig) DeepCopy

func (in *RobotConfig) DeepCopy() *RobotConfig

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

func (*RobotConfig) DeepCopyInto

func (in *RobotConfig) DeepCopyInto(out *RobotConfig)

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

func (*RobotConfig) DeepCopyObject

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

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

func (*RobotConfig) GetCloudIDERBACMetadata

func (robotconfig *RobotConfig) GetCloudIDERBACMetadata() *types.NamespacedName

func (*RobotConfig) GetLoaderJobMetadata

func (robotconfig *RobotConfig) GetLoaderJobMetadata() *types.NamespacedName

func (*RobotConfig) GetOwnerMetadata

func (robotconfig *RobotConfig) GetOwnerMetadata() *types.NamespacedName

func (*RobotConfig) GetPVCEtcMetadata

func (robotconfig *RobotConfig) GetPVCEtcMetadata() *types.NamespacedName

func (*RobotConfig) GetPVCOptMetadata

func (robotconfig *RobotConfig) GetPVCOptMetadata() *types.NamespacedName

func (*RobotConfig) GetPVCUsrMetadata

func (robotconfig *RobotConfig) GetPVCUsrMetadata() *types.NamespacedName

func (*RobotConfig) GetPVCVarMetadata

func (robotconfig *RobotConfig) GetPVCVarMetadata() *types.NamespacedName

func (*RobotConfig) GetPVCX11UnixMetadata

func (robotconfig *RobotConfig) GetPVCX11UnixMetadata() *types.NamespacedName

func (*RobotConfig) GetTrackerRBACMetadata

func (robotconfig *RobotConfig) GetTrackerRBACMetadata() *types.NamespacedName

type RobotConfigList

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

func (*RobotConfigList) DeepCopy

func (in *RobotConfigList) DeepCopy() *RobotConfigList

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

func (*RobotConfigList) DeepCopyInto

func (in *RobotConfigList) DeepCopyInto(out *RobotConfigList)

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

func (*RobotConfigList) DeepCopyObject

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

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

type RobotConfigPhase

type RobotConfigPhase string
const (
	RobotConfigPhaseCreatingRBAC           RobotConfigPhase = "CreatingRBAC"
	RobotConfigPhaseConfiguringEnvironment RobotConfigPhase = "ConfiguringEnvironment"
	RobotConfigPhaseFailed                 RobotConfigPhase = "Failed"
	RobotConfigPhaseReady                  RobotConfigPhase = "Ready"

	RobotConfigPhaseMalfunctioned RobotConfigPhase = "Malfunctioned"
)

type RobotConfigSpec

type RobotConfigSpec struct{}

func (*RobotConfigSpec) DeepCopy

func (in *RobotConfigSpec) DeepCopy() *RobotConfigSpec

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

func (*RobotConfigSpec) DeepCopyInto

func (in *RobotConfigSpec) DeepCopyInto(out *RobotConfigSpec)

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

type RobotConfigStatus

type RobotConfigStatus struct {
	TrackerRBACStatus  RBACConfigStatus `json:"trackerRBACStatus,omitempty"`
	CloudIDERBACStatus RBACConfigStatus `json:"cloudIDERBACStatus,omitempty"`
	VolumeStatuses     VolumeStatuses   `json:"volumeStatuses,omitempty"`
	LoaderJobStatus    LoaderJobStatus  `json:"loaderJobStatus,omitempty"`
	Phase              RobotConfigPhase `json:"phase,omitempty"`
}

func (*RobotConfigStatus) DeepCopy

func (in *RobotConfigStatus) DeepCopy() *RobotConfigStatus

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

func (*RobotConfigStatus) DeepCopyInto

func (in *RobotConfigStatus) DeepCopyInto(out *RobotConfigStatus)

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

type RobotData

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

	Spec   RobotDataSpec   `json:"spec,omitempty"`
	Status RobotDataStatus `json:"status,omitempty"`
}

RobotData is the Schema for the robotdata API

func (*RobotData) DeepCopy

func (in *RobotData) DeepCopy() *RobotData

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

func (*RobotData) DeepCopyInto

func (in *RobotData) DeepCopyInto(out *RobotData)

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

func (*RobotData) DeepCopyObject

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

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

func (*RobotData) GetOwnerMetadata

func (robotdata *RobotData) GetOwnerMetadata() *types.NamespacedName

func (*RobotData) GetRobotActionMetadata

func (robotdata *RobotData) GetRobotActionMetadata() *types.NamespacedName

func (*RobotData) GetRobotNodeMetadata

func (robotdata *RobotData) GetRobotNodeMetadata() *types.NamespacedName

func (*RobotData) GetRobotServiceMetadata

func (robotdata *RobotData) GetRobotServiceMetadata() *types.NamespacedName

func (*RobotData) GetRobotTopicMetadata

func (robotdata *RobotData) GetRobotTopicMetadata() *types.NamespacedName

type RobotDataList

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

RobotDataList contains a list of RobotData

func (*RobotDataList) DeepCopy

func (in *RobotDataList) DeepCopy() *RobotDataList

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

func (*RobotDataList) DeepCopyInto

func (in *RobotDataList) DeepCopyInto(out *RobotDataList)

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

func (*RobotDataList) DeepCopyObject

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

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

type RobotDataSpec

type RobotDataSpec struct {
	DataExport DataExport `json:"dataExport,omitempty"`
}

RobotDataSpec defines the desired state of RobotData

func (*RobotDataSpec) DeepCopy

func (in *RobotDataSpec) DeepCopy() *RobotDataSpec

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

func (*RobotDataSpec) DeepCopyInto

func (in *RobotDataSpec) DeepCopyInto(out *RobotDataSpec)

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

type RobotDataStatus

type RobotDataStatus struct {
	// RobotNode resource status.
	NodeStatus NodeStatus `json:"nodeStatus,omitempty"`
	// RobotTopic resource status.
	TopicStatus TopicStatus `json:"topicStatus,omitempty"`
	// RobotService resource status.
	ServiceStatus ServiceStatus `json:"serviceStatus,omitempty"`
	// RobotAction resource status.
	ActionStatus ActionStatus `json:"actionStatus,omitempty"`
}

RobotDataStatus defines the observed state of RobotData

func (*RobotDataStatus) DeepCopy

func (in *RobotDataStatus) DeepCopy() *RobotDataStatus

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

func (*RobotDataStatus) DeepCopyInto

func (in *RobotDataStatus) DeepCopyInto(out *RobotDataStatus)

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

type RobotDataTypeReference

type RobotDataTypeReference struct {
	Name      string `json:"name,omitempty"`
	Namespace string `json:"namespace,omitempty"`
}

func (*RobotDataTypeReference) DeepCopy

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

func (*RobotDataTypeReference) DeepCopyInto

func (in *RobotDataTypeReference) DeepCopyInto(out *RobotDataTypeReference)

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

type RobotDefinition

type RobotDefinition struct {
	// ROS distro to be used.
	// +kubebuilder:validation:Required
	Distro ROSDistro `json:"distro"`
	// Resource limitations of robot containers.
	Resources RobotResources `json:"resources,omitempty"`
	// Global path of workspaces. It's fixed to `/home/workspaces` path.
	WorkspacesPath string `json:"workspacesPath,omitempty"`
	// Workspace definitions of robot.
	// +kubebuilder:validation:MinItems=1
	Workspaces []Workspace `json:"workspaces,omitempty"`
	// Robot's desired state.
	// +kubebuilder:validation:Required
	State RobotState `json:"state"`
	// Tool selection for robot.
	Tools Tools `json:"tools,omitempty"`
	// Data export configuration.
	DataExport DataExport `json:"dataExport,omitempty"`
	// Namespacing option. If `true`, nodes and topics will be namespaced by robot's name if possible.
	Namespacing bool `json:"namespacing,omitempty"`
	// Robot's mode. If `Hybrid`, robot's nodes can be distributed across clusters.
	// +kubebuilder:validation:Required
	Mode RobotMode `json:"mode"`
	// Configuration for discovery server connection of a robot.
	DiscoveryServer DiscoveryServer `json:"discoveryServer,omitempty"`
	// Cluster selector key that is required to be found at every node as a label key.
	// +kubebuilder:validation:Required
	ClusterSelector string `json:"clusterSelector"`
	// Package/Cluster matching for ROS nodes. Appliable for Hybrid robots.
	PackageClusterSelection map[string]string `json:"packageClusterSelection,omitempty"`
	// NodeSelector for scheduling robot pods.
	// +kubebuilder:validation:Required
	NodeSelector map[string]string `json:"nodeSelector"`
}

Robot's detailed configuration.

func (*RobotDefinition) DeepCopy

func (in *RobotDefinition) DeepCopy() *RobotDefinition

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

func (*RobotDefinition) DeepCopyInto

func (in *RobotDefinition) DeepCopyInto(out *RobotDefinition)

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

type RobotLaunch

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

	Spec   RobotLaunchSpec   `json:"spec,omitempty"`
	Status RobotLaunchStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status

func (*RobotLaunch) DeepCopy

func (in *RobotLaunch) DeepCopy() *RobotLaunch

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

func (*RobotLaunch) DeepCopyInto

func (in *RobotLaunch) DeepCopyInto(out *RobotLaunch)

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

func (*RobotLaunch) DeepCopyObject

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

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

func (*RobotLaunch) GetLaunchPodMetadata

func (robotlaunch *RobotLaunch) GetLaunchPodMetadata() *types.NamespacedName

func (*RobotLaunch) GetOwnerMetadata

func (robotlaunch *RobotLaunch) GetOwnerMetadata() *types.NamespacedName

type RobotLaunchList

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

+kubebuilder:object:root=true

func (*RobotLaunchList) DeepCopy

func (in *RobotLaunchList) DeepCopy() *RobotLaunchList

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

func (*RobotLaunchList) DeepCopyInto

func (in *RobotLaunchList) DeepCopyInto(out *RobotLaunchList)

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

func (*RobotLaunchList) DeepCopyObject

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

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

type RobotLaunchPhase

type RobotLaunchPhase string
const (
	RobotLaunchPhaseCreatingPod   RobotLaunchPhase = "CreatingPod"
	RobotLaunchPhaseNodesNotFound RobotLaunchPhase = "NodesNotFound"
	RobotLaunchPhaseReady         RobotLaunchPhase = "Ready"
	RobotLaunchPhaseMalfunctioned RobotLaunchPhase = "Malfunctioned"
)

type RobotLaunchSpec

type RobotLaunchSpec struct {
	LastLaunchTimestamp string      `json:"lastLaunchTimestamp,omitempty"`
	TrackerInfo         TrackerInfo `json:"trackerInfo,omitempty"`
}

func (*RobotLaunchSpec) DeepCopy

func (in *RobotLaunchSpec) DeepCopy() *RobotLaunchSpec

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

func (*RobotLaunchSpec) DeepCopyInto

func (in *RobotLaunchSpec) DeepCopyInto(out *RobotLaunchSpec)

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

type RobotLaunchStatus

type RobotLaunchStatus struct {
	LaunchPodStatus     LaunchPodStatus  `json:"launchPodStatus,omitempty"`
	LastLaunchTimestamp string           `json:"lastLaunchTimestamp,omitempty"`
	NodeRequest         NodeRequest      `json:"nodeRequest,omitempty"`
	Phase               RobotLaunchPhase `json:"phase,omitempty"`
}

func (*RobotLaunchStatus) DeepCopy

func (in *RobotLaunchStatus) DeepCopy() *RobotLaunchStatus

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

func (*RobotLaunchStatus) DeepCopyInto

func (in *RobotLaunchStatus) DeepCopyInto(out *RobotLaunchStatus)

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

type RobotList

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

+kubebuilder:object:root=true

func (*RobotList) DeepCopy

func (in *RobotList) DeepCopy() *RobotList

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

func (*RobotList) DeepCopyInto

func (in *RobotList) DeepCopyInto(out *RobotList)

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

func (*RobotList) DeepCopyObject

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

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

type RobotMode

type RobotMode string

Robot's mode. If `Hybrid`, robot's nodes can be distributed across clusters. +kubebuilder:validation:Enum=Single;Hybrid

const (
	RobotModeSingle RobotMode = "Single"
	RobotModeHybrid RobotMode = "Hybrid"
)

type RobotNode

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

	Data NodeData      `json:"data,omitempty"`
	Spec RobotNodeSpec `json:"spec,omitempty"`
}

RobotNode is the Schema for the robotnodes API

func (*RobotNode) DeepCopy

func (in *RobotNode) DeepCopy() *RobotNode

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

func (*RobotNode) DeepCopyInto

func (in *RobotNode) DeepCopyInto(out *RobotNode)

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

func (*RobotNode) DeepCopyObject

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

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

type RobotNodeList

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

RobotNodeList contains a list of RobotNode

func (*RobotNodeList) DeepCopy

func (in *RobotNodeList) DeepCopy() *RobotNodeList

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

func (*RobotNodeList) DeepCopyInto

func (in *RobotNodeList) DeepCopyInto(out *RobotNodeList)

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

func (*RobotNodeList) DeepCopyObject

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

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

type RobotNodeSpec

type RobotNodeSpec struct {
	// Update frequency of node information.
	UpdateFrequency string `json:"updateFrequency,omitempty"`
}

RobotNodeSpec defines the desired state of RobotNode

func (*RobotNodeSpec) DeepCopy

func (in *RobotNodeSpec) DeepCopy() *RobotNodeSpec

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

func (*RobotNodeSpec) DeepCopyInto

func (in *RobotNodeSpec) DeepCopyInto(out *RobotNodeSpec)

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

type RobotPhase

type RobotPhase string
const (
	RobotPhaseConfiguringEnvironment RobotPhase = "ConfiguringEnvironment"
	RobotPhaseCloningRepositories    RobotPhase = "CloningRepositories"
	RobotPhaseBuildingWorkspaces     RobotPhase = "BuildingWorkspaces"
	RobotPhaseLaunchingNodes         RobotPhase = "LaunchingNodes"
	RobotPhaseReady                  RobotPhase = "Ready"

	RobotPhaseFailedConfiguration RobotPhase = "FailedConfiguration"
	RobotPhaseFailedCloning       RobotPhase = "FailedCloning"
	RobotPhaseFailedBuilding      RobotPhase = "FailedBuilding"
	RobotPhaseFailedLaunching     RobotPhase = "FailedLaunching"

	RobotPhaseSleeping      RobotPhase = "Sleeping"
	RobotPhaseMalfunctioned RobotPhase = "Malfunctioned"
	RobotPhaseUnknown       RobotPhase = "Unknown"
)

type RobotRBAC

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

	Spec   RobotRBACSpec   `json:"spec,omitempty"`
	Status RobotRBACStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status

func (*RobotRBAC) DeepCopy

func (in *RobotRBAC) DeepCopy() *RobotRBAC

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

func (*RobotRBAC) DeepCopyInto

func (in *RobotRBAC) DeepCopyInto(out *RobotRBAC)

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

func (*RobotRBAC) DeepCopyObject

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

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

func (*RobotRBAC) GetOwnerMetadata

func (robotrbac *RobotRBAC) GetOwnerMetadata() *types.NamespacedName

func (*RobotRBAC) GetRoleBindingMetadata

func (robotrbac *RobotRBAC) GetRoleBindingMetadata() *types.NamespacedName

func (*RobotRBAC) GetRoleMetadata

func (robotrbac *RobotRBAC) GetRoleMetadata() *types.NamespacedName

func (*RobotRBAC) GetServiceAccountMetadata

func (robotrbac *RobotRBAC) GetServiceAccountMetadata() *types.NamespacedName

type RobotRBACList

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

RobotRBACList contains a list of RobotRBAC

func (*RobotRBACList) DeepCopy

func (in *RobotRBACList) DeepCopy() *RobotRBACList

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

func (*RobotRBACList) DeepCopyInto

func (in *RobotRBACList) DeepCopyInto(out *RobotRBACList)

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

func (*RobotRBACList) DeepCopyObject

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

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

type RobotRBACPhase

type RobotRBACPhase string
const (
	RobotRBACPhaseCreatingRole           RobotRBACPhase = "CreatingRole"
	RobotRBACPhaseCreatingServiceAccount RobotRBACPhase = "CreatingServiceAccount"
	RobotRBACPhaseCreatingRoleBinding    RobotRBACPhase = "CreatingRoleBinding"
	RobotRBACPhaseReady                  RobotRBACPhase = "Ready"

	RobotRBACPhaseMalfunctioned RobotRBACPhase = "Malfunctioned"
)

type RobotRBACSpec

type RobotRBACSpec struct {
	Rules []rbacv1.PolicyRule `json:"rules,omitempty"`
}

RobotRBACSpec defines the desired state of RobotRBAC

func (*RobotRBACSpec) DeepCopy

func (in *RobotRBACSpec) DeepCopy() *RobotRBACSpec

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

func (*RobotRBACSpec) DeepCopyInto

func (in *RobotRBACSpec) DeepCopyInto(out *RobotRBACSpec)

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

type RobotRBACStatus

type RobotRBACStatus struct {
	RoleStatus           RBACResourceStatus `json:"roleStatus,omitempty"`
	ServiceAccountStatus RBACResourceStatus `json:"serviceAccountStatus,omitempty"`
	RoleBindingStatus    RBACResourceStatus `json:"roleBindingStatus,omitempty"`

	Phase RobotRBACPhase `json:"phase,omitempty"`
}

RobotRBACStatus defines the observed state of RobotRBAC

func (*RobotRBACStatus) DeepCopy

func (in *RobotRBACStatus) DeepCopy() *RobotRBACStatus

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

func (*RobotRBACStatus) DeepCopyInto

func (in *RobotRBACStatus) DeepCopyInto(out *RobotRBACStatus)

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

type RobotResources

type RobotResources struct {
	// Specifies how much CPU will be allocated per container.
	// +kubebuilder:validation:Pattern=`^([0-9])+(m)$`
	// +kubebuilder:default="800m"
	CPUPerContainer string `json:"cpuPerContainer,omitempty"`
	// Specifies how much memory will be allocated per container.
	// +kubebuilder:validation:Pattern=`^([0-9])+(Mi|Gi)$`
	// +kubebuilder:default="512Mi"
	MemoryPerContainer string `json:"memoryPerContainer,omitempty"`
	// Specifies how much storage will be allocated per container.
	// +kubebuilder:default=10000
	Storage int `json:"storage,omitempty"`
}

Robot's resource limitations.

func (*RobotResources) DeepCopy

func (in *RobotResources) DeepCopy() *RobotResources

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

func (*RobotResources) DeepCopyInto

func (in *RobotResources) DeepCopyInto(out *RobotResources)

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

type RobotRuntime

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

	Spec   RobotRuntimeSpec   `json:"spec,omitempty"`
	Status RobotRuntimeStatus `json:"status,omitempty"`
}

func (*RobotRuntime) DeepCopy

func (in *RobotRuntime) DeepCopy() *RobotRuntime

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

func (*RobotRuntime) DeepCopyInto

func (in *RobotRuntime) DeepCopyInto(out *RobotRuntime)

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

func (*RobotRuntime) DeepCopyObject

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

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

func (*RobotRuntime) GetOwnerMetadata

func (robotruntime *RobotRuntime) GetOwnerMetadata() *types.NamespacedName

func (*RobotRuntime) GetRobotLaunchMetadata

func (robotruntime *RobotRuntime) GetRobotLaunchMetadata() *types.NamespacedName

type RobotRuntimeList

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

func (*RobotRuntimeList) DeepCopy

func (in *RobotRuntimeList) DeepCopy() *RobotRuntimeList

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

func (*RobotRuntimeList) DeepCopyInto

func (in *RobotRuntimeList) DeepCopyInto(out *RobotRuntimeList)

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

func (*RobotRuntimeList) DeepCopyObject

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

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

type RobotRuntimePhase

type RobotRuntimePhase string
const (
	RobotRuntimePhaseCreatingRobotLaunch RobotRuntimePhase = "CreatingRobotLaunch"
	RobotRuntimePhaseReady               RobotRuntimePhase = "Ready"
	RobotRuntimePhaseMalfunctioned       RobotRuntimePhase = "Malfunctioned"
)

type RobotRuntimeSpec

type RobotRuntimeSpec struct{}

func (*RobotRuntimeSpec) DeepCopy

func (in *RobotRuntimeSpec) DeepCopy() *RobotRuntimeSpec

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

func (*RobotRuntimeSpec) DeepCopyInto

func (in *RobotRuntimeSpec) DeepCopyInto(out *RobotRuntimeSpec)

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

type RobotRuntimeStatus

type RobotRuntimeStatus struct {
	LaunchStatus LaunchStatus `json:"launchStatus,omitempty"`

	Phase RobotRuntimePhase `json:"phase,omitempty"`
}

func (*RobotRuntimeStatus) DeepCopy

func (in *RobotRuntimeStatus) DeepCopy() *RobotRuntimeStatus

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

func (*RobotRuntimeStatus) DeepCopyInto

func (in *RobotRuntimeStatus) DeepCopyInto(out *RobotRuntimeStatus)

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

type RobotService

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

	Data ServiceData      `json:"data,omitempty"`
	Spec RobotServiceSpec `json:"spec,omitempty"`
}

RobotService is the Schema for the robotservices API

func (*RobotService) DeepCopy

func (in *RobotService) DeepCopy() *RobotService

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

func (*RobotService) DeepCopyInto

func (in *RobotService) DeepCopyInto(out *RobotService)

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

func (*RobotService) DeepCopyObject

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

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

type RobotServiceList

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

RobotServiceList contains a list of RobotService

func (*RobotServiceList) DeepCopy

func (in *RobotServiceList) DeepCopy() *RobotServiceList

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

func (*RobotServiceList) DeepCopyInto

func (in *RobotServiceList) DeepCopyInto(out *RobotServiceList)

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

func (*RobotServiceList) DeepCopyObject

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

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

type RobotServiceSpec

type RobotServiceSpec struct {
	// Update frequency of service information.
	UpdateFrequency string `json:"updateFrequency,omitempty"`
}

RobotServiceSpec defines the desired state of RobotService

func (*RobotServiceSpec) DeepCopy

func (in *RobotServiceSpec) DeepCopy() *RobotServiceSpec

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

func (*RobotServiceSpec) DeepCopyInto

func (in *RobotServiceSpec) DeepCopyInto(out *RobotServiceSpec)

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

type RobotSpec

type RobotSpec struct {
	// Desired state of robot and ROS environment.
	Robot RobotDefinition `json:"robot,omitempty"`
	// Desired values for Kubernetes resources of robot.
	ArtifactReference ArtifactReference `json:"artifacts,omitempty"`
}

Desired state of a robot.

func (*RobotSpec) DeepCopy

func (in *RobotSpec) DeepCopy() *RobotSpec

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

func (*RobotSpec) DeepCopyInto

func (in *RobotSpec) DeepCopyInto(out *RobotSpec)

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

type RobotState

type RobotState string

Robot's state. If `Passive`, only cloning operation will be made. +kubebuilder:validation:Enum=Launched;Built;Passive

const (
	RobotStateLaunched RobotState = "Launched"
	RobotStateBuilt    RobotState = "Built"
	RobotStatePassive  RobotState = "Passive"
)

type RobotStatus

type RobotStatus struct {
	ArtifactStatus ArtifactStatus `json:"artifactStatus,omitempty"`

	ConfigStatus  ConfigStatus  `json:"configStatus,omitempty"`
	CloneStatus   CloneStatus   `json:"cloneStatus,omitempty"`
	BuildStatus   BuildStatus   `json:"buildStatus,omitempty"`
	ToolsStatus   ToolsStatus   `json:"toolsStatus,omitempty"`
	RuntimeStatus RuntimeStatus `json:"runtimeStatus,omitempty"`
	DataStatus    DataStatus    `json:"dataStatus,omitempty"`

	Cluster  string      `json:"cluster,omitempty"`
	NodeInfo K8sNodeInfo `json:"nodeInfo,omitempty"`
	Phase    RobotPhase  `json:"phase,omitempty"`
}

func (*RobotStatus) DeepCopy

func (in *RobotStatus) DeepCopy() *RobotStatus

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

func (*RobotStatus) DeepCopyInto

func (in *RobotStatus) DeepCopyInto(out *RobotStatus)

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

type RobotTools

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

	Spec   RobotToolsSpec   `json:"spec,omitempty"`
	Status RobotToolsStatus `json:"status,omitempty"`
}

func (*RobotTools) DeepCopy

func (in *RobotTools) DeepCopy() *RobotTools

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

func (*RobotTools) DeepCopyInto

func (in *RobotTools) DeepCopyInto(out *RobotTools)

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

func (*RobotTools) DeepCopyObject

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

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

func (*RobotTools) GetBridgePodMetadata

func (robottools *RobotTools) GetBridgePodMetadata() *types.NamespacedName

func (*RobotTools) GetBridgeServiceMetadata

func (robottools *RobotTools) GetBridgeServiceMetadata() *types.NamespacedName

func (*RobotTools) GetCloudIDEPodMetadata

func (robottools *RobotTools) GetCloudIDEPodMetadata() *types.NamespacedName

func (*RobotTools) GetCloudIDEServiceMetadata

func (robottools *RobotTools) GetCloudIDEServiceMetadata() *types.NamespacedName

func (*RobotTools) GetFoxglovePodMetadata

func (robottools *RobotTools) GetFoxglovePodMetadata() *types.NamespacedName

func (*RobotTools) GetFoxgloveServiceMetadata

func (robottools *RobotTools) GetFoxgloveServiceMetadata() *types.NamespacedName

func (*RobotTools) GetOwnerMetadata

func (robottools *RobotTools) GetOwnerMetadata() *types.NamespacedName

func (*RobotTools) GetTrackerPodMetadata

func (robottools *RobotTools) GetTrackerPodMetadata() *types.NamespacedName

func (*RobotTools) GetTrackerServiceMetadata

func (robottools *RobotTools) GetTrackerServiceMetadata() *types.NamespacedName

func (*RobotTools) GetVDIMetadata

func (robottools *RobotTools) GetVDIMetadata() *types.NamespacedName

type RobotToolsList

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

func (*RobotToolsList) DeepCopy

func (in *RobotToolsList) DeepCopy() *RobotToolsList

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

func (*RobotToolsList) DeepCopyInto

func (in *RobotToolsList) DeepCopyInto(out *RobotToolsList)

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

func (*RobotToolsList) DeepCopyObject

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

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

type RobotToolsPhase

type RobotToolsPhase string
const (
	RobotToolsPhaseConfiguringTools RobotToolsPhase = "ConfiguringTools"
	RobotToolsPhaseReady            RobotToolsPhase = "Ready"
	RobotToolsPhaseMalfunctioned    RobotToolsPhase = "Malfunctioned"
)

type RobotToolsSpec

type RobotToolsSpec struct {
	Tools Tools `json:"tools,omitempty"`
}

func (*RobotToolsSpec) DeepCopy

func (in *RobotToolsSpec) DeepCopy() *RobotToolsSpec

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

func (*RobotToolsSpec) DeepCopyInto

func (in *RobotToolsSpec) DeepCopyInto(out *RobotToolsSpec)

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

type RobotToolsStatus

type RobotToolsStatus struct {
	TrackerPodStatus      ToolsPodStatus     `json:"toolsPodStatus,omitempty"`
	TrackerServiceStatus  ToolsServiceStatus `json:"toolsServiceStatus,omitempty"`
	CloudIDEPodStatus     ToolsPodStatus     `json:"cloudIDEPodStatus,omitempty"`
	CloudIDEServiceStatus ToolsServiceStatus `json:"cloudIDEServiceStatus,omitempty"`
	BridgePodStatus       ToolsPodStatus     `json:"bridgePodStatus,omitempty"`
	BridgeServiceStatus   ToolsServiceStatus `json:"bridgeServiceStatus,omitempty"`
	FoxglovePodStatus     ToolsPodStatus     `json:"foxglovePodStatus,omitempty"`
	FoxgloveServiceStatus ToolsServiceStatus `json:"foxgloveServiceStatus,omitempty"`
	VDIInstanceStatus     VDIStatusForRobot  `json:"vdiStatus,omitempty"`

	Phase RobotToolsPhase `json:"phase,omitempty"`
}

func (*RobotToolsStatus) DeepCopy

func (in *RobotToolsStatus) DeepCopy() *RobotToolsStatus

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

func (*RobotToolsStatus) DeepCopyInto

func (in *RobotToolsStatus) DeepCopyInto(out *RobotToolsStatus)

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

type RobotTopic

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

	Data TopicData      `json:"data,omitempty"`
	Spec RobotTopicSpec `json:"spec,omitempty"`
}

RobotTopic is the Schema for the robottopics API

func (*RobotTopic) DeepCopy

func (in *RobotTopic) DeepCopy() *RobotTopic

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

func (*RobotTopic) DeepCopyInto

func (in *RobotTopic) DeepCopyInto(out *RobotTopic)

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

func (*RobotTopic) DeepCopyObject

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

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

type RobotTopicList

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

RobotTopicList contains a list of RobotTopic

func (*RobotTopicList) DeepCopy

func (in *RobotTopicList) DeepCopy() *RobotTopicList

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

func (*RobotTopicList) DeepCopyInto

func (in *RobotTopicList) DeepCopyInto(out *RobotTopicList)

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

func (*RobotTopicList) DeepCopyObject

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

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

type RobotTopicSpec

type RobotTopicSpec struct {
	// Update frequency of topic information.
	UpdateFrequency string `json:"updateFrequency,omitempty"`
}

RobotTopicSpec defines the desired state of RobotTopic

func (*RobotTopicSpec) DeepCopy

func (in *RobotTopicSpec) DeepCopy() *RobotTopicSpec

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

func (*RobotTopicSpec) DeepCopyInto

func (in *RobotTopicSpec) DeepCopyInto(out *RobotTopicSpec)

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

type RuntimeStatus

type RuntimeStatus struct {
	Created bool               `json:"created,omitempty"`
	Status  RobotRuntimeStatus `json:"status,omitempty"`
}

func (*RuntimeStatus) DeepCopy

func (in *RuntimeStatus) DeepCopy() *RuntimeStatus

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

func (*RuntimeStatus) DeepCopyInto

func (in *RuntimeStatus) DeepCopyInto(out *RuntimeStatus)

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

type ScriptConfigMapStatus

type ScriptConfigMapStatus struct {
	Created bool `json:"created,omitempty"`
}

func (*ScriptConfigMapStatus) DeepCopy

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

func (*ScriptConfigMapStatus) DeepCopyInto

func (in *ScriptConfigMapStatus) DeepCopyInto(out *ScriptConfigMapStatus)

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

type Service

type Service struct {
	// Name of the service.
	Name string `json:"name,omitempty"`
	// Type(s) of the service.
	Type []string `json:"type,omitempty"`
}

Service information.

func (*Service) DeepCopy

func (in *Service) DeepCopy() *Service

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

func (*Service) DeepCopyInto

func (in *Service) DeepCopyInto(out *Service)

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

type ServiceData

type ServiceData struct {
	// Response message from ROS client library.
	Message string `json:"message,omitempty"`
	// Last time the service data is updated.
	LastUpdateTimestamp string `json:"lastUpdateTimestamp,omitempty"`
	// Service list.
	ServiceList []Service `json:"actionList,omitempty"`
}

Response of service request.

func (*ServiceData) DeepCopy

func (in *ServiceData) DeepCopy() *ServiceData

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

func (*ServiceData) DeepCopyInto

func (in *ServiceData) DeepCopyInto(out *ServiceData)

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

type ServiceStatus

type ServiceStatus struct {
	// Indicates whether RobotService resource is created or not.
	Created bool `json:"created,omitempty"`
	// Reference to the RobotTopic resource.
	Reference RobotDataTypeReference `json:"reference,omitempty"`
}

Abstract status of owned resource RobotService.

func (*ServiceStatus) DeepCopy

func (in *ServiceStatus) DeepCopy() *ServiceStatus

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

func (*ServiceStatus) DeepCopyInto

func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus)

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

type Step

type Step struct {
	// Name of the step.
	Name string `json:"name"`
	// Bash command to run.
	Command string `json:"command,omitempty"`
	// Bash script to run.
	Script string `json:"script,omitempty"`
	// Environment variables for step.
	Env []corev1.EnvVar `json:"env,omitempty"`
}

Step is a command or script to execute when building a robot. Either `command` or `script` should be specified for each step.

func (*Step) DeepCopy

func (in *Step) DeepCopy() *Step

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

func (*Step) DeepCopyInto

func (in *Step) DeepCopyInto(out *Step)

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

type StepStatus

type StepStatus struct {
	Step       Step     `json:"step,omitempty"`
	JobName    string   `json:"jobName,omitempty"`
	JobCreated bool     `json:"created,omitempty"`
	JobPhase   JobPhase `json:"jobPhase,omitempty"`
}

func (*StepStatus) DeepCopy

func (in *StepStatus) DeepCopy() *StepStatus

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

func (*StepStatus) DeepCopyInto

func (in *StepStatus) DeepCopyInto(out *StepStatus)

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

type StorageClassConfig

type StorageClassConfig struct {
	// Storage class name
	Name string `json:"name,omitempty"`
	// PVC access mode.
	AccessMode corev1.PersistentVolumeAccessMode `json:"accessMode,omitempty"`
}

Storage class configuration for a volume type.

func (*StorageClassConfig) DeepCopy

func (in *StorageClassConfig) DeepCopy() *StorageClassConfig

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

func (*StorageClassConfig) DeepCopyInto

func (in *StorageClassConfig) DeepCopyInto(out *StorageClassConfig)

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

type StorageClassConfigs

type StorageClassConfigs struct {
	// Storage class for workspace PVC. Since it is aimed to share workspace volume
	// across multiple clusters in Hybrid robots, storage classes that supports `ReadWriteMany`
	// feature should be selected. Defaulted to `obenebs-hostpath`.
	WorkspaceVolumes StorageClassConfig `json:"workspaceVolumes,omitempty"`
	// Storage class for Linux PVCs. To make robot's data persistent, it's various directories
	// are copied to PVCs and stored. Defaulted to `obenebs-hostpath`.
	LinuxVolumes StorageClassConfig `json:"linuxVolumes,omitempty"`
}

Storage class selection for persistent volume claims.

func (*StorageClassConfigs) DeepCopy

func (in *StorageClassConfigs) DeepCopy() *StorageClassConfigs

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

func (*StorageClassConfigs) DeepCopyInto

func (in *StorageClassConfigs) DeepCopyInto(out *StorageClassConfigs)

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

type ToolConfig

type ToolConfig struct {
	// Indicates if the tool is enabled or disabled.
	Enabled bool `json:"enabled,omitempty"`
	// Indicates tool's pod resource limits.
	Resources ToolResources `json:"resources,omitempty"`
	// Indicates application's (tool) node ports.
	Ports ToolPorts `json:"ports,omitempty"`
}

Tool configurations.

func (*ToolConfig) DeepCopy

func (in *ToolConfig) DeepCopy() *ToolConfig

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

func (*ToolConfig) DeepCopyInto

func (in *ToolConfig) DeepCopyInto(out *ToolConfig)

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

type ToolPorts

type ToolPorts struct {
	TCP int          `json:"tcp,omitempty"`
	UDP ToolPortsUDP `json:"udp,omitempty"`
}

func (*ToolPorts) DeepCopy

func (in *ToolPorts) DeepCopy() *ToolPorts

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

func (*ToolPorts) DeepCopyInto

func (in *ToolPorts) DeepCopyInto(out *ToolPorts)

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

type ToolPortsUDP

type ToolPortsUDP struct {
	// +kubebuilder:validation:Pattern=`^([0-9])+-([0-9])+$`
	Range string `json:"range,omitempty"`
}

func (*ToolPortsUDP) DeepCopy

func (in *ToolPortsUDP) DeepCopy() *ToolPortsUDP

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

func (*ToolPortsUDP) DeepCopyInto

func (in *ToolPortsUDP) DeepCopyInto(out *ToolPortsUDP)

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

type ToolResources

type ToolResources struct {
	GPUCore int `json:"gpuCore,omitempty"`
	// +kubebuilder:validation:Pattern=`^([0-9])+(m)$`
	CPU string `json:"cpu,omitempty"`
	// +kubebuilder:validation:Pattern=`^([0-9])+(Mi|Gi)$`
	Memory string `json:"memory,omitempty"`
}

Tool resource limits.

func (*ToolResources) DeepCopy

func (in *ToolResources) DeepCopy() *ToolResources

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

func (*ToolResources) DeepCopyInto

func (in *ToolResources) DeepCopyInto(out *ToolResources)

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

type Tools

type Tools struct {
	// Configuration for ROS Tracker.
	Tracker ToolConfig `json:"tracker,omitempty"`
	// Configuration for Cloud IDE.
	CloudIDE ToolConfig `json:"cloudIDE,omitempty"`
	// Configuration for ROS Bridge Suite.
	Bridge ToolConfig `json:"bridge,omitempty"`
	// Configuration for Foxglove.
	Foxglove ToolConfig `json:"foxglove,omitempty"`
	// Configuration for VDI. It can only be used in Kubernetes clusters which has GPU acceleration.
	VDI ToolConfig `json:"vdi,omitempty"`
}

func (*Tools) DeepCopy

func (in *Tools) DeepCopy() *Tools

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

func (*Tools) DeepCopyInto

func (in *Tools) DeepCopyInto(out *Tools)

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

type ToolsPodStatus

type ToolsPodStatus struct {
	Created bool            `json:"created,omitempty"`
	Phase   corev1.PodPhase `json:"phase,omitempty"`
	IP      string          `json:"ip,omitempty"`
}

func (*ToolsPodStatus) DeepCopy

func (in *ToolsPodStatus) DeepCopy() *ToolsPodStatus

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

func (*ToolsPodStatus) DeepCopyInto

func (in *ToolsPodStatus) DeepCopyInto(out *ToolsPodStatus)

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

type ToolsServiceStatus

type ToolsServiceStatus struct {
	Created bool             `json:"created,omitempty"`
	Ports   map[string]int32 `json:"ports,omitempty"`
}

func (*ToolsServiceStatus) DeepCopy

func (in *ToolsServiceStatus) DeepCopy() *ToolsServiceStatus

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

func (*ToolsServiceStatus) DeepCopyInto

func (in *ToolsServiceStatus) DeepCopyInto(out *ToolsServiceStatus)

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

type ToolsStatus

type ToolsStatus struct {
	Created bool             `json:"created,omitempty"`
	Status  RobotToolsStatus `json:"status,omitempty"`
}

func (*ToolsStatus) DeepCopy

func (in *ToolsStatus) DeepCopy() *ToolsStatus

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

func (*ToolsStatus) DeepCopyInto

func (in *ToolsStatus) DeepCopyInto(out *ToolsStatus)

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

type Topic

type Topic struct {
	// Name of the topic.
	Name string `json:"name,omitempty"`
	// Type(s) of the topic.
	Type []string `json:"type,omitempty"`
	// Number of publisher nodes.
	PublisherCount int `json:"publisherCount,omitempty"`
	// Publisher nodes of topic.
	PublisherNodes []NodeSummary `json:"publisherNodes,omitempty"`
	// Number of subscriber nodes.
	SubscriberCount int `json:"subscriberCount,omitempty"`
	// Subscriber nodes of topic.
	SubscriberNodes []NodeSummary `json:"subscriberNodes,omitempty"`
}

Topic information.

func (*Topic) DeepCopy

func (in *Topic) DeepCopy() *Topic

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

func (*Topic) DeepCopyInto

func (in *Topic) DeepCopyInto(out *Topic)

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

type TopicData

type TopicData struct {
	// Response message from ROS client library.
	Message string `json:"message,omitempty"`
	// Last time the topic data is updated.
	LastUpdateTimestamp string `json:"lastUpdateTimestamp,omitempty"`
	// Topic list.
	TopicList []Topic `json:"topicList,omitempty"`
}

Response of topic request.

func (*TopicData) DeepCopy

func (in *TopicData) DeepCopy() *TopicData

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

func (*TopicData) DeepCopyInto

func (in *TopicData) DeepCopyInto(out *TopicData)

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

type TopicStatus

type TopicStatus struct {
	// Indicates whether RobotTopic resource is created or not.
	Created bool `json:"created,omitempty"`
	// Reference to the RobotTopic resource.
	Reference RobotDataTypeReference `json:"reference,omitempty"`
}

Abstract status of owned resource RobotTopic.

func (*TopicStatus) DeepCopy

func (in *TopicStatus) DeepCopy() *TopicStatus

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

func (*TopicStatus) DeepCopyInto

func (in *TopicStatus) DeepCopyInto(out *TopicStatus)

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

type TrackerInfo

type TrackerInfo struct {
	IP   string `json:"ip,omitempty"`
	Port string `json:"port,omitempty"`
}

func (*TrackerInfo) DeepCopy

func (in *TrackerInfo) DeepCopy() *TrackerInfo

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

func (*TrackerInfo) DeepCopyInto

func (in *TrackerInfo) DeepCopyInto(out *TrackerInfo)

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

type TypeExport

type TypeExport struct {
	Enabled         bool   `json:"enabled,omitempty"`
	UpdateFrequency string `json:"updateFrequency,omitempty"`
}

Export configuration of relevant data

func (*TypeExport) DeepCopy

func (in *TypeExport) DeepCopy() *TypeExport

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

func (*TypeExport) DeepCopyInto

func (in *TypeExport) DeepCopyInto(out *TypeExport)

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

type Usr

type Usr struct {
	Created bool `json:"created,omitempty"`
}

func (*Usr) DeepCopy

func (in *Usr) DeepCopy() *Usr

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

func (*Usr) DeepCopyInto

func (in *Usr) DeepCopyInto(out *Usr)

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

type VDI

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

	Spec   VDISpec   `json:"spec,omitempty"`
	Status VDIStatus `json:"status,omitempty"`
}

func (*VDI) DeepCopy

func (in *VDI) DeepCopy() *VDI

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

func (*VDI) DeepCopyInto

func (in *VDI) DeepCopyInto(out *VDI)

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

func (*VDI) DeepCopyObject

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

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

func (*VDI) GetOwnerMetadata

func (robotruntime *VDI) GetOwnerMetadata() *types.NamespacedName

func (*VDI) GetVDIPodMetadata

func (vdi *VDI) GetVDIPodMetadata() *types.NamespacedName

func (*VDI) GetVDIServiceMetadata

func (vdi *VDI) GetVDIServiceMetadata() *types.NamespacedName

type VDIList

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

func (*VDIList) DeepCopy

func (in *VDIList) DeepCopy() *VDIList

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

func (*VDIList) DeepCopyInto

func (in *VDIList) DeepCopyInto(out *VDIList)

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

func (*VDIList) DeepCopyObject

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

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

type VDIPhase

type VDIPhase string
const (
	VDIPhaseStarting VDIPhase = "Starting"
	VDIPhaseReady    VDIPhase = "Ready"
)

type VDIPodStatus

type VDIPodStatus struct {
	Created bool            `json:"created,omitempty"`
	Phase   corev1.PodPhase `json:"phase,omitempty"`
	IP      string          `json:"ip,omitempty"`
}

func (*VDIPodStatus) DeepCopy

func (in *VDIPodStatus) DeepCopy() *VDIPodStatus

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

func (*VDIPodStatus) DeepCopyInto

func (in *VDIPodStatus) DeepCopyInto(out *VDIPodStatus)

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

type VDIServiceStatus

type VDIServiceStatus struct {
	Created bool `json:"created,omitempty"`
}

func (*VDIServiceStatus) DeepCopy

func (in *VDIServiceStatus) DeepCopy() *VDIServiceStatus

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

func (*VDIServiceStatus) DeepCopyInto

func (in *VDIServiceStatus) DeepCopyInto(out *VDIServiceStatus)

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

type VDISpec

type VDISpec struct {
	Config ToolConfig `json:"config,omitempty"`
}

func (*VDISpec) DeepCopy

func (in *VDISpec) DeepCopy() *VDISpec

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

func (*VDISpec) DeepCopyInto

func (in *VDISpec) DeepCopyInto(out *VDISpec)

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

type VDIStatus

type VDIStatus struct {
	VDIPodStatus     VDIPodStatus     `json:"vdiPodStatus,omitempty"`
	VDIServiceStatus VDIServiceStatus `json:"vdiServiceStatus,omitempty"`

	Phase VDIPhase `json:"phase,omitempty"`
}

func (*VDIStatus) DeepCopy

func (in *VDIStatus) DeepCopy() *VDIStatus

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

func (*VDIStatus) DeepCopyInto

func (in *VDIStatus) DeepCopyInto(out *VDIStatus)

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

type VDIStatusForRobot

type VDIStatusForRobot struct {
	Created bool      `json:"created,omitempty"`
	Status  VDIStatus `json:"status,omitempty"`
}

func (*VDIStatusForRobot) DeepCopy

func (in *VDIStatusForRobot) DeepCopy() *VDIStatusForRobot

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

func (*VDIStatusForRobot) DeepCopyInto

func (in *VDIStatusForRobot) DeepCopyInto(out *VDIStatusForRobot)

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

type Var

type Var struct {
	Created bool `json:"created,omitempty"`
}

func (*Var) DeepCopy

func (in *Var) DeepCopy() *Var

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

func (*Var) DeepCopyInto

func (in *Var) DeepCopyInto(out *Var)

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

type VolumeStatuses

type VolumeStatuses struct {
	ROS ROSVolumes `json:"robot,omitempty"`
}

func (*VolumeStatuses) DeepCopy

func (in *VolumeStatuses) DeepCopy() *VolumeStatuses

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

func (*VolumeStatuses) DeepCopyInto

func (in *VolumeStatuses) DeepCopyInto(out *VolumeStatuses)

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

type Workspace

type Workspace struct {
	// Name of workspace. If a workspace's name is `my_ws`, it's absolute path is `/home/workspaces/my_ws`.
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// Repositories to clone inside workspace's `src` directory.
	// +kubebuilder:validation:MinItems=1
	Repositories []Repository `json:"repositories"`
	// Build type of a workspace. If `Standard`, `rosdep install` and `colcon build` commands are executed in order.
	// If `Custom`, steps should be defined as bash commands or scripts.
	// +kubebuilder:validation:Required
	Build WorkspaceBuildType `json:"build"`
	// Building steps of a workspace. If build type of a workspace is `Custom`, it's building steps can be defined as steps.
	BuildSteps []Step `json:"buildSteps,omitempty"`
}

Workspace description. Each robot should contain at least one workspace. A workspace should contain at least one repository in it. Building operations are executed seperately for each workspace. Global path of workspaces is `/home/workspaces`.

func (*Workspace) DeepCopy

func (in *Workspace) DeepCopy() *Workspace

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

func (*Workspace) DeepCopyInto

func (in *Workspace) DeepCopyInto(out *Workspace)

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

type WorkspaceBuildType

type WorkspaceBuildType string

Build type of a workspace. If `Standard`, `rosdep install` and `colcon build` commands are executed in order. If `Custom`, steps should be defined as bash commands or scripts. +kubebuilder:validation:Enum=Standard;Custom

const (
	WorkspaceBuildTypeStandard WorkspaceBuildType = "Standard"
	WorkspaceBuildTypeCustom   WorkspaceBuildType = "Custom"
)

type WorkspaceStatus

type WorkspaceStatus struct {
	Created bool `json:"created,omitempty"`
}

func (*WorkspaceStatus) DeepCopy

func (in *WorkspaceStatus) DeepCopy() *WorkspaceStatus

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

func (*WorkspaceStatus) DeepCopyInto

func (in *WorkspaceStatus) DeepCopyInto(out *WorkspaceStatus)

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

type X11Unix

type X11Unix struct {
	Created bool `json:"created,omitempty"`
}

func (*X11Unix) DeepCopy

func (in *X11Unix) DeepCopy() *X11Unix

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

func (*X11Unix) DeepCopyInto

func (in *X11Unix) DeepCopyInto(out *X11Unix)

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