v1

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2026 License: Apache-2.0 Imports: 4 Imported by: 7

Documentation

Overview

Package v1 contains API Schema definitions for the selenosis.io v1 API group. +kubebuilder:object:generate=true +groupName=selenosis.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: "selenosis.io", Version: "v1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Types

type Browser

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

	Spec   BrowserSpec   `json:"spec,omitempty"`
	Status BrowserStatus `json:"status,omitempty"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Browser",type="string",JSONPath=".spec.browserName" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.browserVersion" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="PodIP",type="string",JSONPath=".status.podIP" +kubebuilder:printcolumn:name="StartTime",type="date",JSONPath=".status.startTime" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:path=browsers,scope=Namespaced,shortName=brw +kubebuilder:storageversion +kubebuilder:categories=selenosis Browser is the Schema for the browsers API

func (*Browser) DeepCopy

func (in *Browser) DeepCopy() *Browser

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

func (*Browser) DeepCopyInto

func (in *Browser) DeepCopyInto(out *Browser)

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

func (*Browser) DeepCopyObject

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

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

type BrowserList

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true BrowserList contains a list of BrowserPod

func (*BrowserList) DeepCopy

func (in *BrowserList) DeepCopy() *BrowserList

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

func (*BrowserList) DeepCopyInto

func (in *BrowserList) DeepCopyInto(out *BrowserList)

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

func (*BrowserList) DeepCopyObject

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

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

type BrowserSpec

type BrowserSpec struct {
	// BrowserName specifies the name of the browser to use (e.g., chrome, firefox)
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	BrowserName string `json:"browserName"`

	// BrowserVersion specifies the version of the browser to use (e.g., 91.0, 88.0)
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	BrowserVersion string `json:"browserVersion"`
}

BrowserSpec defines the desired state of BrowserPod

func (*BrowserSpec) DeepCopy

func (in *BrowserSpec) DeepCopy() *BrowserSpec

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

func (*BrowserSpec) DeepCopyInto

func (in *BrowserSpec) DeepCopyInto(out *BrowserSpec)

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

type BrowserStatus

type BrowserStatus struct {
	// PodIP is the IP address allocated to the pod
	// +optional
	PodIP string `json:"podIP,omitempty"`

	// Phase is the current lifecycle phase of the pod
	// +optional
	Phase corev1.PodPhase `json:"phase,omitempty"`

	// A human readable message indicating details about why the pod is in this condition.
	// +optional
	Message string `json:"message,omitempty" protobuf:"bytes,3,opt,name=message"`

	// A brief CamelCase message indicating details about why the pod is in this state.
	// e.g. 'Evicted'
	// +optional
	Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"`

	// StartTime is when the pod was started
	// +optional
	StartTime *metav1.Time `json:"startTime,omitempty"`

	// ContainerStatuses provides detailed status information about each container
	// +optional
	// +listType=atomic
	ContainerStatuses []ContainerStatus `json:"containerStatuses,omitempty"`
}

BrowserStatus defines the observed state of BrowserPod

func (*BrowserStatus) DeepCopy

func (in *BrowserStatus) DeepCopy() *BrowserStatus

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

func (*BrowserStatus) DeepCopyInto

func (in *BrowserStatus) DeepCopyInto(out *BrowserStatus)

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

type ContainerPort

type ContainerPort struct {
	// Name for the port that can be referred to by services
	// +optional
	Name string `json:"name,omitempty"`

	// Number of port to expose on the container
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65535
	ContainerPort int32 `json:"containerPort"`

	// Protocol for port. Must be UDP, TCP, or SCTP
	// +optional
	Protocol corev1.Protocol `json:"protocol,omitempty"`

	// Number of port to expose on the host
	// +optional
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65535
	HostPort int32 `json:"hostPort,omitempty"`
}

ContainerPort represents a network port in a container

func (*ContainerPort) DeepCopy

func (in *ContainerPort) DeepCopy() *ContainerPort

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

func (*ContainerPort) DeepCopyInto

func (in *ContainerPort) DeepCopyInto(out *ContainerPort)

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

type ContainerStatus

type ContainerStatus struct {
	// Name of the container
	Name string `json:"name"`

	// State holds details about the container's current condition
	// +optional
	State corev1.ContainerState `json:"state,omitempty"`

	// Image is the image the container is running
	// +optional
	Image string `json:"image,omitempty"`

	// RestartCount is the number of times the container has been restarted
	RestartCount int32 `json:"restartCount"`

	// Ports exposed by the container
	// +optional
	// +listType=atomic
	Ports []ContainerPort `json:"ports,omitempty"`
}

ContainerStatus represents the status of a container

func (*ContainerStatus) DeepCopy

func (in *ContainerStatus) DeepCopy() *ContainerStatus

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

func (*ContainerStatus) DeepCopyInto

func (in *ContainerStatus) DeepCopyInto(out *ContainerStatus)

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