Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the controller v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=controller.devfile.io
Package v1alpha1 contains API Schema definitions for the controller v1alpha1 API group +kubebuilder:object:generate=true +groupName=controller.devfile.io
Index ¶
- Constants
- Variables
- type DevWorkspaceRouting
- type DevWorkspaceRoutingClass
- type DevWorkspaceRoutingList
- type DevWorkspaceRoutingPhase
- type DevWorkspaceRoutingSpec
- type DevWorkspaceRoutingStatus
- type EndpointAttribute
- type EndpointList
- type EndpointType
- type ExposedEndpoint
- type ExposedEndpointList
- type PodAdditions
Constants ¶
const ( // TypeEndpointAttribute is an attribute used for devfile endpoints that specifies the endpoint type. // See EndpointType for respected values TypeEndpointAttribute EndpointAttribute = "type" // The value for `type` endpoint attribute that indicates that it should be exposed as mainUrl // in the workspace status MainEndpointType EndpointType = "main" // DiscoverableAttribute defines an endpoint as "discoverable", meaning that a service should be // created using the endpoint name (i.e. instead of generating a service name for all endpoints, // this endpoint should be statically accessible) DiscoverableAttribute EndpointAttribute = "discoverable" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "controller.devfile.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 )
Functions ¶
This section is empty.
Types ¶
type DevWorkspaceRouting ¶ added in v0.2.0
type DevWorkspaceRouting struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DevWorkspaceRoutingSpec `json:"spec,omitempty"`
Status DevWorkspaceRoutingStatus `json:"status,omitempty"`
}
DevWorkspaceRouting is the Schema for the devworkspaceroutings API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:path=devworkspaceroutings,scope=Namespaced,shortName=dwr +kubebuilder:printcolumn:name="DevWorkspace ID",type="string",JSONPath=".spec.devworkspaceId",description="The owner DevWorkspace's unique id" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="The current phase" +kubebuilder:printcolumn:name="Info",type="string",JSONPath=".status.message",description="Additional info about DevWorkspaceRouting state"
func (*DevWorkspaceRouting) DeepCopy ¶ added in v0.2.0
func (in *DevWorkspaceRouting) DeepCopy() *DevWorkspaceRouting
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevWorkspaceRouting.
func (*DevWorkspaceRouting) DeepCopyInto ¶ added in v0.2.0
func (in *DevWorkspaceRouting) DeepCopyInto(out *DevWorkspaceRouting)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevWorkspaceRouting) DeepCopyObject ¶ added in v0.2.0
func (in *DevWorkspaceRouting) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DevWorkspaceRoutingClass ¶ added in v0.2.0
type DevWorkspaceRoutingClass string
const ( DevWorkspaceRoutingBasic DevWorkspaceRoutingClass = "basic" DevWorkspaceRoutingCluster DevWorkspaceRoutingClass = "cluster" DevWorkspaceRoutingClusterTLS DevWorkspaceRoutingClass = "cluster-tls" DevWorkspaceRoutingWebTerminal DevWorkspaceRoutingClass = "web-terminal" )
type DevWorkspaceRoutingList ¶ added in v0.2.0
type DevWorkspaceRoutingList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DevWorkspaceRouting `json:"items"`
}
DevWorkspaceRoutingList contains a list of DevWorkspaceRouting
func (*DevWorkspaceRoutingList) DeepCopy ¶ added in v0.2.0
func (in *DevWorkspaceRoutingList) DeepCopy() *DevWorkspaceRoutingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevWorkspaceRoutingList.
func (*DevWorkspaceRoutingList) DeepCopyInto ¶ added in v0.2.0
func (in *DevWorkspaceRoutingList) DeepCopyInto(out *DevWorkspaceRoutingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevWorkspaceRoutingList) DeepCopyObject ¶ added in v0.2.0
func (in *DevWorkspaceRoutingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DevWorkspaceRoutingPhase ¶ added in v0.2.0
type DevWorkspaceRoutingPhase string
Valid phases for devworkspacerouting
const ( RoutingReady DevWorkspaceRoutingPhase = "Ready" RoutingPreparing DevWorkspaceRoutingPhase = "Preparing" RoutingFailed DevWorkspaceRoutingPhase = "Failed" )
type DevWorkspaceRoutingSpec ¶ added in v0.2.0
type DevWorkspaceRoutingSpec struct {
// Id for the DevWorkspace being routed
DevWorkspaceId string `json:"devworkspaceId"`
// Class of the routing: this drives which DevWorkspaceRouting controller will manage this routing
RoutingClass DevWorkspaceRoutingClass `json:"routingClass,omitempty"`
// Machines to endpoints map
Endpoints map[string]EndpointList `json:"endpoints"`
// Selector that should be used by created services to point to the devworkspace Pod
PodSelector map[string]string `json:"podSelector"`
}
DevWorkspaceRoutingSpec defines the desired state of DevWorkspaceRouting +k8s:openapi-gen=true
func (*DevWorkspaceRoutingSpec) DeepCopy ¶ added in v0.2.0
func (in *DevWorkspaceRoutingSpec) DeepCopy() *DevWorkspaceRoutingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevWorkspaceRoutingSpec.
func (*DevWorkspaceRoutingSpec) DeepCopyInto ¶ added in v0.2.0
func (in *DevWorkspaceRoutingSpec) DeepCopyInto(out *DevWorkspaceRoutingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevWorkspaceRoutingStatus ¶ added in v0.2.0
type DevWorkspaceRoutingStatus struct {
// Additions to main devworkspace deployment
PodAdditions *PodAdditions `json:"podAdditions,omitempty"`
// Machine name to exposed endpoint map
ExposedEndpoints map[string]ExposedEndpointList `json:"exposedEndpoints,omitempty"`
// Routing reconcile phase
Phase DevWorkspaceRoutingPhase `json:"phase,omitempty"`
// Message is a user-readable message explaining the current phase (e.g. reason for failure)
Message string `json:"message,omitempty"`
}
DevWorkspaceRoutingStatus defines the observed state of DevWorkspaceRouting +k8s:openapi-gen=true
func (*DevWorkspaceRoutingStatus) DeepCopy ¶ added in v0.2.0
func (in *DevWorkspaceRoutingStatus) DeepCopy() *DevWorkspaceRoutingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevWorkspaceRoutingStatus.
func (*DevWorkspaceRoutingStatus) DeepCopyInto ¶ added in v0.2.0
func (in *DevWorkspaceRoutingStatus) DeepCopyInto(out *DevWorkspaceRoutingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointAttribute ¶
type EndpointAttribute string
type EndpointList ¶
func (EndpointList) DeepCopy ¶
func (in EndpointList) DeepCopy() EndpointList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointList.
func (EndpointList) DeepCopyInto ¶
func (in EndpointList) DeepCopyInto(out *EndpointList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointType ¶ added in v0.5.0
type EndpointType string
type ExposedEndpoint ¶
type ExposedEndpoint struct {
// Name of the exposed endpoint
Name string `json:"name"`
// Public URL of the exposed endpoint
Url string `json:"url"`
// Attributes of the exposed endpoint
// +optional
Attributes devfileAttr.Attributes `json:"attributes,omitempty"`
}
func (*ExposedEndpoint) DeepCopy ¶
func (in *ExposedEndpoint) DeepCopy() *ExposedEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExposedEndpoint.
func (*ExposedEndpoint) DeepCopyInto ¶
func (in *ExposedEndpoint) DeepCopyInto(out *ExposedEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExposedEndpointList ¶
type ExposedEndpointList []ExposedEndpoint
func (ExposedEndpointList) DeepCopy ¶
func (in ExposedEndpointList) DeepCopy() ExposedEndpointList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExposedEndpointList.
func (ExposedEndpointList) DeepCopyInto ¶
func (in ExposedEndpointList) DeepCopyInto(out *ExposedEndpointList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodAdditions ¶
type PodAdditions struct {
// Annotations to be applied to devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
Annotations map[string]string `json:"annotations,omitempty"`
// Labels to be applied to devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
Labels map[string]string `json:"labels,omitempty"`
// Containers to add to devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
Containers []v1.Container `json:"containers,omitempty"`
// Init containers to add to devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
InitContainers []v1.Container `json:"initContainers,omitempty"`
// Volumes to add to devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
Volumes []v1.Volume `json:"volumes,omitempty"`
// VolumeMounts to add to all containers in a devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
VolumeMounts []v1.VolumeMount `json:"volumeMounts,omitempty"`
// ImagePullSecrets to add to devworkspace deployment
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
PullSecrets []v1.LocalObjectReference `json:"pullSecrets,omitempty"`
// Annotations for the devworkspace service account, it might be used for e.g. OpenShift oauth with SA as auth client
// +optional
// +patchMergeKey=name
// +patchStrategy=merge
ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"`
}
Summary of additions that are to be merged into the main devworkspace deployment
func (*PodAdditions) DeepCopy ¶
func (in *PodAdditions) DeepCopy() *PodAdditions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAdditions.
func (*PodAdditions) DeepCopyInto ¶
func (in *PodAdditions) DeepCopyInto(out *PodAdditions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.