v1alpha1

package
v0.0.9 Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2023 License: Apache-2.0 Imports: 9 Imported by: 7

Documentation

Overview

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

Index

Constants

View Source
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.
	// - 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"
)

Variables

View Source
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 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

func (in *K6) DeepCopy() *K6

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

func (*K6) DeepCopyInto

func (in *K6) DeepCopyInto(out *K6)

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

func (*K6) DeepCopyObject

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

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

func (*K6) InitializeConditions added in v0.0.9

func (k6 *K6) InitializeConditions()

InitializeConditions defines only conditions common to all test runs.

func (K6) IsFalse added in v0.0.9

func (k6 K6) IsFalse(conditionType string) bool

func (K6) IsTrue added in v0.0.9

func (k6 K6) IsTrue(conditionType string) bool

func (K6) IsUnknown added in v0.0.9

func (k6 K6) IsUnknown(conditionType string) bool

func (K6) LastUpdate added in v0.0.9

func (k6 K6) LastUpdate(conditionType string) (time.Time, bool)

func (*K6) UpdateCondition added in v0.0.9

func (k6 *K6) UpdateCondition(conditionType string, conditionStatus metav1.ConditionStatus)

type K6Configmap

type K6Configmap struct {
	Name string `json:"name"`
	File string `json:"file,omitempty"`
}

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

func (in *K6List) DeepCopy() *K6List

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

func (*K6List) DeepCopyInto

func (in *K6List) DeepCopyInto(out *K6List)

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

func (*K6List) DeepCopyObject

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

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

func (in *K6Script) DeepCopy() *K6Script

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

func (*K6Script) DeepCopyInto

func (in *K6Script) DeepCopyInto(out *K6Script)

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

func (in *K6Scuttle) DeepCopy() *K6Scuttle

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

func (*K6Scuttle) DeepCopyInto

func (in *K6Scuttle) DeepCopyInto(out *K6Scuttle)

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"`
}

K6Spec defines the desired state of K6

func (*K6Spec) DeepCopy

func (in *K6Spec) DeepCopy() *K6Spec

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

func (*K6Spec) DeepCopyInto

func (in *K6Spec) DeepCopyInto(out *K6Spec)

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"`

	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

K6Status defines the observed state of K6

func (*K6Status) DeepCopy

func (in *K6Status) DeepCopy() *K6Status

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

func (*K6Status) DeepCopyInto

func (in *K6Status) DeepCopyInto(out *K6Status)

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

func (k6status *K6Status) SetIfNewer(proposedStatus K6Status) (isNewer bool)

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

type K6VolumeClaim struct {
	Name string `json:"name"`
	File string `json:"file,omitempty"`
}

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"`
}

func (*Pod) DeepCopy

func (in *Pod) DeepCopy() *Pod

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

func (*Pod) DeepCopyInto

func (in *Pod) DeepCopyInto(out *Pod)

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 Stage

type Stage string

Stage describes which stage of the test execution lifecycle our runners are in +kubebuilder:validation:Enum=initialization;initialized;created;started;finished;error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL