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 ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSpec.
func (*AuthSpec) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Hyperfoil.
func (*Hyperfoil) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Hyperfoil) DeepCopyObject ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.
func (*RouteSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.