v1alpha2

package
v0.0.0-...-28b2d3d Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

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

Index

Constants

This section is empty.

Variables

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

	// 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 AuthSpec

type AuthSpec struct {
	// Optional; Name of secret used for basic authentication. Must contain key 'password'.
	Secret string `json:"secret,omitempty"`
}

AuthSpec defines authentication/authorization settings.

func (*AuthSpec) DeepCopy

func (in *AuthSpec) DeepCopy() *AuthSpec

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

func (*AuthSpec) DeepCopyInto

func (in *AuthSpec) DeepCopyInto(out *AuthSpec)

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

type Hyperfoil

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

	Spec   HyperfoilSpec   `json:"spec,omitempty"`
	Status HyperfoilStatus `json:"status,omitempty"`
}

Hyperfoil is the Schema for the hyperfoils API

func (*Hyperfoil) DeepCopy

func (in *Hyperfoil) DeepCopy() *Hyperfoil

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

func (*Hyperfoil) DeepCopyInto

func (in *Hyperfoil) DeepCopyInto(out *Hyperfoil)

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

func (*Hyperfoil) DeepCopyObject

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

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

type HyperfoilList

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

HyperfoilList contains a list of Hyperfoil

func (*HyperfoilList) DeepCopy

func (in *HyperfoilList) DeepCopy() *HyperfoilList

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

func (*HyperfoilList) DeepCopyInto

func (in *HyperfoilList) DeepCopyInto(out *HyperfoilList)

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

func (*HyperfoilList) DeepCopyObject

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

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

type HyperfoilSpec

type HyperfoilSpec struct {
	// Controller image. If 'version' is defined, too, the tag is replaced (or appended). Defaults to 'quay.io/hyperfoil/hyperfoil'
	Image string `json:"image,omitempty"`
	// Tag for controller image. Defaults to version matching the operator version.
	Version string `json:"version,omitempty"`
	// Specification of the exposed route.
	Route RouteSpec `json:"route,omitempty"`
	// Authentication/authorization settings.
	Auth AuthSpec `json:"auth,omitempty"`
	// Name of the config map and optionally its entry (separated by '/': e.g myconfigmap/log4j2-superverbose.xml) storing Log4j2 configuration file. By default the Controller uses its embedded configuration.
	Log string `json:"log,omitempty"`
	// Deploy timeout for agents, in milliseconds.
	AgentDeployTimeout int `json:"agentDeployTimeout,omitempty"`
	// If this is set the controller does not start benchmark run right away after hitting
	// /benchmark/my-benchmark/start ; instead it responds with status 301 and header Location
	// set to concatenation of this string and 'BENCHMARK=my-benchmark&RUN_ID=xxxx'.
	// CLI interprets that response as a request to hit CI instance on this URL, assuming that
	// CI will trigger a new job that will eventually call /benchmark/my-benchmark/start?runId=xxxx
	// with header 'x-trigger-job'. This is useful if the the CI has to synchronize Hyperfoil
	// to other benchmarks that don't use this controller instance.
	TriggerURL string `json:"triggerUrl,omitempty"`
	// Names of config maps and optionally keys (separated by '/') holding hooks that run before the run starts.
	PreHooks []string `json:"preHooks,omitempty"`
	// Names of config maps and optionally keys (separated by '/') holding hooks that run after the run finishes.
	PostHooks []string `json:"postHooks,omitempty"`
	// Name of the PVC hyperfoil should mount for its workdir.
	PersistentVolumeClaim string `json:"persistentVolumeClaim,omitempty"`
	// List of secrets in this namespace; each entry from those secrets will be mapped
	// as environment variable, using the key as variable name.
	SecretEnvVars []string `json:"secretEnvVars,omitempty"`
}

HyperfoilSpec Configures Hyperfoil Controller and related resources.

func (*HyperfoilSpec) DeepCopy

func (in *HyperfoilSpec) DeepCopy() *HyperfoilSpec

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

func (*HyperfoilSpec) DeepCopyInto

func (in *HyperfoilSpec) DeepCopyInto(out *HyperfoilSpec)

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

type HyperfoilStatus

type HyperfoilStatus struct {
	// "One of: 'Ready', 'Pending' or 'Error'"
	Status string `json:"status,omitempty"`
	// RFC 3339 date and time of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
	// Human readable explanation for the status.
	Reason string `json:"reason,omitempty"`
}

HyperfoilStatus defines the observed state of Hyperfoil

func (*HyperfoilStatus) DeepCopy

func (in *HyperfoilStatus) DeepCopy() *HyperfoilStatus

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

func (*HyperfoilStatus) DeepCopyInto

func (in *HyperfoilStatus) DeepCopyInto(out *HyperfoilStatus)

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

type RouteSpec

type RouteSpec struct {
	// Host for the route leading to Controller REST endpoint. Example: hyperfoil.apps.cloud.example.com
	Host string `json:"host,omitempty"`
	// Either 'http' (for plain-text routes - not recommended), 'edge', 'reencrypt' or 'passthrough'
	Type string `json:"type,omitempty"`
	// Optional for edge and reencrypt routes, required for passthrough; Name of the secret hosting `tls.crt`, `tls.key` and optionally `ca.crt`
	TLS string `json:"tls,omitempty"`
}

RouteSpec defines the route for external access.

func (*RouteSpec) DeepCopy

func (in *RouteSpec) DeepCopy() *RouteSpec

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

func (*RouteSpec) DeepCopyInto

func (in *RouteSpec) DeepCopyInto(out *RouteSpec)

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