Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the k6 v1alpha1 API group +kubebuilder:object:generate=true +groupName=k6.io
Index ¶
- Constants
- Variables
- type Cleanup
- type InitContainer
- type K6
- func (in *K6) DeepCopy() *K6
- func (in *K6) DeepCopyInto(out *K6)
- func (in *K6) DeepCopyObject() runtime.Object
- func (k6 *K6) Initialize()
- func (k6 K6) IsFalse(conditionType string) bool
- func (k6 K6) IsTrue(conditionType string) bool
- func (k6 K6) IsUnknown(conditionType string) bool
- func (k6 K6) LastUpdate(conditionType string) (time.Time, bool)
- func (k6 *K6) UpdateCondition(conditionType string, conditionStatus metav1.ConditionStatus)
- type K6Configmap
- type K6List
- type K6Script
- type K6Scuttle
- type K6Spec
- type K6Status
- type K6VolumeClaim
- type Pod
- type PodMetadata
- type PrivateLoadZone
- func (in *PrivateLoadZone) DeepCopy() *PrivateLoadZone
- func (in *PrivateLoadZone) DeepCopyInto(out *PrivateLoadZone)
- func (in *PrivateLoadZone) DeepCopyObject() runtime.Object
- func (plz *PrivateLoadZone) Deregister(ctx context.Context, logger logr.Logger, client *cloudapi.Client) error
- func (plz *PrivateLoadZone) Initialize()
- func (plz PrivateLoadZone) IsFalse(conditionType string) bool
- func (plz PrivateLoadZone) IsTrue(conditionType string) bool
- func (plz PrivateLoadZone) IsUnknown(conditionType string) bool
- func (plz *PrivateLoadZone) Register(ctx context.Context, logger logr.Logger, client *cloudapi.Client) error
- func (plz PrivateLoadZone) UpdateCondition(conditionType string, conditionStatus metav1.ConditionStatus)
- type PrivateLoadZoneList
- type PrivateLoadZoneSpec
- type PrivateLoadZoneStatus
- type Stage
Constants ¶
const ( // TestRunRunning indicates if the test run is currently running. // - if empty / Unknown, it's any stage before k6 resume (starter) // - if False, it's after all runners have finished successfully or with error // - if True, it's after successful starter but before all runners have finished TestRunRunning = "TestRunRunning" // CloudTestRun indicates if this test run is supposed to be a cloud test run // (i.e. with `--out cloud` option). // - if empty / Unknown, the type of test is unknown yet // - if False, it is not a cloud test run // - if True, it is a cloud test run CloudTestRun = "CloudTestRun" // CloudTestRunCreated indicates if k6 Cloud test run ID has been created for this test. // - if empty / Unknown, it's either a non-cloud test run or it is a cloud test run // that wasn't created yet // - if False, it is a cloud test run and it is yet to be created // - if True, it is a cloud test run and it has been created already CloudTestRunCreated = "CloudTestRunCreated" // CloudTestRunFinalized indicates if k6 Cloud test run has been finalized. // - if empty / Unknown, it's either a non-cloud test run or it is a cloud test run // that wasn't finalized yet // - if False, it's a cloud test run and it is yet to be finalized // - if True, it's a cloud test run that has been finalized already CloudTestRunFinalized = "CloudTestRunFinalized" // CloudPLZTestRun indicates if this k6 Cloud test run is a PLZ test run. // This condition is valid only if CloudTestRun is True as well. // - if empty / Unknown, it's either a non-PLZ test run or it's unknown yet. // - if False, it's not a PLZ test run. // - if True, it is a PLZ test run. CloudPLZTestRun = "CloudPLZTestRun" // CloudTestRunAborted indicates if this k6 Cloud test run was aborted externally, // for any reason. // This condition is valid only if CloudPLZTestRun is True as well. // - if empty / Unknown, it's either a non-PLZ test run or it's unknown yet. // - if False, it's a PLZ test run and it wasn't aborted. // - if True, it is a PLZ test run and it was aborted. CloudTestRunAborted = "CloudTestRunAborted" )
const ( // PLZRegistered indicates if the PLZ has been registered. // - if empty / Unknown / False, call registration // - if True, do nothing PLZRegistered = "PLZRegistered" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "k6.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 Cleanup ¶
type Cleanup string
Cleanup allows for automatic cleanup of resources post execution +kubebuilder:validation:Enum=post
type InitContainer ¶ added in v0.0.10
type InitContainer struct { Name string `json:"name,omitempty"` Image string `json:"image,omitempty"` Env []corev1.EnvVar `json:"env,omitempty"` EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"` Command []string `json:"command,omitempty"` Args []string `json:"args,omitempty"` WorkingDir string `json:"workingDir,omitempty"` VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` }
func (*InitContainer) DeepCopy ¶ added in v0.0.10
func (in *InitContainer) DeepCopy() *InitContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitContainer.
func (*InitContainer) DeepCopyInto ¶ added in v0.0.10
func (in *InitContainer) DeepCopyInto(out *InitContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K6 ¶
type K6 struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec K6Spec `json:"spec,omitempty"` Status K6Status `json:"status,omitempty"` }
K6 is the Schema for the k6s API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Stage",type="string",JSONPath=".status.stage",description="Stage" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:printcolumn:name="TestRunID",type="string",JSONPath=".status.testRunId"
func (*K6) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6.
func (*K6) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*K6) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*K6) Initialize ¶ added in v0.0.10
func (k6 *K6) Initialize()
Initialize defines only conditions common to all test runs.
func (K6) LastUpdate ¶ added in v0.0.9
func (*K6) UpdateCondition ¶ added in v0.0.9
func (k6 *K6) UpdateCondition(conditionType string, conditionStatus metav1.ConditionStatus)
type K6Configmap ¶
K6Configmap describes the config map script location
func (*K6Configmap) DeepCopy ¶
func (in *K6Configmap) DeepCopy() *K6Configmap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6Configmap.
func (*K6Configmap) DeepCopyInto ¶
func (in *K6Configmap) DeepCopyInto(out *K6Configmap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K6List ¶
type K6List struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []K6 `json:"items"` }
K6List contains a list of K6 +kubebuilder:object:root=true
func (*K6List) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6List.
func (*K6List) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*K6List) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type K6Script ¶
type K6Script struct { VolumeClaim K6VolumeClaim `json:"volumeClaim,omitempty"` ConfigMap K6Configmap `json:"configMap,omitempty"` LocalFile string `json:"localFile,omitempty"` }
K6Script describes where the script to execute the tests is found
func (*K6Script) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6Script.
func (*K6Script) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K6Scuttle ¶
type K6Scuttle struct { Enabled string `json:"enabled,omitempty"` EnvoyAdminApi string `json:"envoyAdminApi,omitempty"` NeverKillIstio bool `json:"neverKillIstio,omitempty"` NeverKillIstioOnFailure bool `json:"neverKillIstioOnFailure,omitempty"` DisableLogging bool `json:"disableLogging,omitempty"` StartWithoutEnvoy bool `json:"startWithoutEnvoy,omitempty"` WaitForEnvoyTimeout string `json:"waitForEnvoyTimeout,omitempty"` IstioQuitApi string `json:"istioQuitApi,omitempty"` GenericQuitEndpoint string `json:"genericQuitEndpoint,omitempty"` QuitWithoutEnvoyTimeout string `json:"quitWithoutEnvoyTimeout,omitempty"` }
func (*K6Scuttle) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6Scuttle.
func (*K6Scuttle) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K6Spec ¶
type K6Spec struct { Script K6Script `json:"script"` Parallelism int32 `json:"parallelism"` Separate bool `json:"separate,omitempty"` Arguments string `json:"arguments,omitempty"` Ports []corev1.ContainerPort `json:"ports,omitempty"` Initializer *Pod `json:"initializer,omitempty"` Starter Pod `json:"starter,omitempty"` Runner Pod `json:"runner,omitempty"` Quiet string `json:"quiet,omitempty"` Paused string `json:"paused,omitempty"` Scuttle K6Scuttle `json:"scuttle,omitempty"` Cleanup Cleanup `json:"cleanup,omitempty"` TestRunID string `json:"testRunId,omitempty"` // PLZ reserved field Token string `json:"token,omitempty"` // PLZ reserved field (for now) }
K6Spec defines the desired state of K6
func (*K6Spec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6Spec.
func (*K6Spec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K6Status ¶
type K6Status struct { Stage Stage `json:"stage,omitempty"` TestRunID string `json:"testRunId,omitempty"` AggregationVars string `json:"aggregationVars,omitempty"` Conditions []metav1.Condition `json:"conditions,omitempty"` }
K6Status defines the observed state of K6
func (*K6Status) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6Status.
func (*K6Status) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*K6Status) SetIfNewer ¶ added in v0.0.9
SetIfNewer changes k6status only if changes in proposedStatus are consistent with the expected progression of a test run. If there were any acceptable changes proposed, it returns true.
type K6VolumeClaim ¶
K6VolumeClaim describes the volume claim script location
func (*K6VolumeClaim) DeepCopy ¶
func (in *K6VolumeClaim) DeepCopy() *K6VolumeClaim
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K6VolumeClaim.
func (*K6VolumeClaim) DeepCopyInto ¶
func (in *K6VolumeClaim) DeepCopyInto(out *K6VolumeClaim)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Pod ¶
type Pod struct { Affinity *corev1.Affinity `json:"affinity,omitempty"` AutomountServiceAccountToken string `json:"automountServiceAccountToken,omitempty"` Env []corev1.EnvVar `json:"env,omitempty"` Image string `json:"image,omitempty"` ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` Metadata PodMetadata `json:"metadata,omitempty"` NodeSelector map[string]string `json:"nodeselector,omitempty"` Tolerations []corev1.Toleration `json:"tolerations,omitempty"` Resources corev1.ResourceRequirements `json:"resources,omitempty"` ServiceAccountName string `json:"serviceAccountName,omitempty"` SecurityContext corev1.PodSecurityContext `json:"securityContext,omitempty"` EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"` ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` InitContainers []InitContainer `json:"initContainers,omitempty"` Volumes []corev1.Volume `json:"volumes,omitempty"` VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` }
func (*Pod) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pod.
func (*Pod) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodMetadata ¶
type PodMetadata struct { Annotations map[string]string `json:"annotations,omitempty"` Labels map[string]string `json:"labels,omitempty"` }
func (*PodMetadata) DeepCopy ¶
func (in *PodMetadata) DeepCopy() *PodMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodMetadata.
func (*PodMetadata) DeepCopyInto ¶
func (in *PodMetadata) DeepCopyInto(out *PodMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivateLoadZone ¶ added in v0.0.10
type PrivateLoadZone struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PrivateLoadZoneSpec `json:"spec,omitempty"` Status PrivateLoadZoneStatus `json:"status,omitempty"` }
PrivateLoadZone is the Schema for the privateloadzones API
func (*PrivateLoadZone) DeepCopy ¶ added in v0.0.10
func (in *PrivateLoadZone) DeepCopy() *PrivateLoadZone
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLoadZone.
func (*PrivateLoadZone) DeepCopyInto ¶ added in v0.0.10
func (in *PrivateLoadZone) DeepCopyInto(out *PrivateLoadZone)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PrivateLoadZone) DeepCopyObject ¶ added in v0.0.10
func (in *PrivateLoadZone) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PrivateLoadZone) Deregister ¶ added in v0.0.10
func (plz *PrivateLoadZone) Deregister(ctx context.Context, logger logr.Logger, client *cloudapi.Client) error
Deregister attempts to deregister PLZ with the k6 Cloud. It is meant to be used as a finalizer.
func (*PrivateLoadZone) Initialize ¶ added in v0.0.10
func (plz *PrivateLoadZone) Initialize()
func (PrivateLoadZone) IsFalse ¶ added in v0.0.10
func (plz PrivateLoadZone) IsFalse(conditionType string) bool
func (PrivateLoadZone) IsTrue ¶ added in v0.0.10
func (plz PrivateLoadZone) IsTrue(conditionType string) bool
func (PrivateLoadZone) IsUnknown ¶ added in v0.0.10
func (plz PrivateLoadZone) IsUnknown(conditionType string) bool
func (*PrivateLoadZone) Register ¶ added in v0.0.10
func (plz *PrivateLoadZone) Register(ctx context.Context, logger logr.Logger, client *cloudapi.Client) error
Register attempts to register PLZ with the k6 Cloud. Regardless of the result, condition PLZRegistered will be set to False. Callee is expected to check the returned error and set condition when it's appropriate.
func (PrivateLoadZone) UpdateCondition ¶ added in v0.0.10
func (plz PrivateLoadZone) UpdateCondition(conditionType string, conditionStatus metav1.ConditionStatus)
type PrivateLoadZoneList ¶ added in v0.0.10
type PrivateLoadZoneList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PrivateLoadZone `json:"items"` }
PrivateLoadZoneList contains a list of PrivateLoadZone
func (*PrivateLoadZoneList) DeepCopy ¶ added in v0.0.10
func (in *PrivateLoadZoneList) DeepCopy() *PrivateLoadZoneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLoadZoneList.
func (*PrivateLoadZoneList) DeepCopyInto ¶ added in v0.0.10
func (in *PrivateLoadZoneList) DeepCopyInto(out *PrivateLoadZoneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PrivateLoadZoneList) DeepCopyObject ¶ added in v0.0.10
func (in *PrivateLoadZoneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PrivateLoadZoneSpec ¶ added in v0.0.10
type PrivateLoadZoneSpec struct { Token string `json:"token"` Resources corev1.ResourceList `json:"resources"` ServiceAccountName string `json:"serviceAccountName,omitempty"` NodeSelector map[string]string `json:"nodeSelector,omitempty"` }
PrivateLoadZoneSpec defines the desired state of PrivateLoadZone
func (*PrivateLoadZoneSpec) DeepCopy ¶ added in v0.0.10
func (in *PrivateLoadZoneSpec) DeepCopy() *PrivateLoadZoneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLoadZoneSpec.
func (*PrivateLoadZoneSpec) DeepCopyInto ¶ added in v0.0.10
func (in *PrivateLoadZoneSpec) DeepCopyInto(out *PrivateLoadZoneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivateLoadZoneStatus ¶ added in v0.0.10
PrivateLoadZoneStatus defines the observed state of PrivateLoadZone
func (*PrivateLoadZoneStatus) DeepCopy ¶ added in v0.0.10
func (in *PrivateLoadZoneStatus) DeepCopy() *PrivateLoadZoneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLoadZoneStatus.
func (*PrivateLoadZoneStatus) DeepCopyInto ¶ added in v0.0.10
func (in *PrivateLoadZoneStatus) DeepCopyInto(out *PrivateLoadZoneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PrivateLoadZoneStatus) SetIfNewer ¶ added in v0.0.10
func (plzStatus *PrivateLoadZoneStatus) SetIfNewer(proposedStatus PrivateLoadZoneStatus) (isNewer bool)
SetIfNewer changes plzstatus only if changes in proposedStatus are newer. If there were any acceptable changes proposed, it returns true.