Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the litmuschaos v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=litmuschaos.io
Package v1alpha1 contains API Schema definitions for the litmuschaos v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=litmuschaos.io
Index ¶
- Constants
- Variables
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- func Resource(resource string) schema.GroupResource
- type ApplicationParams
- type ChaosEngine
- type ChaosEngineList
- type ChaosEngineSpec
- type ChaosEngineStatus
- type ChaosExperiment
- type ChaosExperimentList
- type ChaosExperimentSpec
- type ChaosExperimentStatus
- type ChaosResult
- type ChaosResultList
- type ChaosResultSpec
- type ChaosResultStatus
- type ComponentParams
- type ENVPair
- type ExperimentAttributes
- type ExperimentDef
- type ExperimentENV
- type ExperimentList
- type ExperimentStatuses
- type MonitorInfo
- type RunnerInfo
- type TestStatus
Constants ¶
const GroupName = "litmuschaos.io"
GroupName is the name of api group for the custom resources
const GroupVersion = "v1alpha1"
GroupVersion is the version of api group for the custom resources
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme collects functions that add things to a scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type ApplicationParams ¶
type ApplicationParams struct { //Namespace of the AUT Appns string `json:"appns"` //Unique label of the AUT Applabel string `json:"applabel"` //kind of application AppKind string `json:"appkind"` }
ApplicationParams defines information about Application-Under-Test (AUT) on the cluster Controller expects AUT to be annotated with litmuschaos.io/chaos: "true" to run chaos
func (*ApplicationParams) DeepCopy ¶
func (in *ApplicationParams) DeepCopy() *ApplicationParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationParams.
func (*ApplicationParams) DeepCopyInto ¶
func (in *ApplicationParams) DeepCopyInto(out *ApplicationParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosEngine ¶
type ChaosEngine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ChaosEngineSpec `json:"spec,omitempty"` Status ChaosEngineStatus `json:"status,omitempty"` }
ChaosEngine is the Schema for the chaosengines API +k8s:openapi-gen=true
func (*ChaosEngine) DeepCopy ¶
func (in *ChaosEngine) DeepCopy() *ChaosEngine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosEngine.
func (*ChaosEngine) DeepCopyInto ¶
func (in *ChaosEngine) DeepCopyInto(out *ChaosEngine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosEngine) DeepCopyObject ¶
func (in *ChaosEngine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosEngineList ¶
type ChaosEngineList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ChaosEngine `json:"items"` }
ChaosEngineList contains a list of ChaosEngine +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*ChaosEngineList) DeepCopy ¶
func (in *ChaosEngineList) DeepCopy() *ChaosEngineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosEngineList.
func (*ChaosEngineList) DeepCopyInto ¶
func (in *ChaosEngineList) DeepCopyInto(out *ChaosEngineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosEngineList) DeepCopyObject ¶
func (in *ChaosEngineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosEngineSpec ¶
type ChaosEngineSpec struct { //Appinfo contains deployment details of AUT Appinfo ApplicationParams `json:"appinfo"` //ChaosServiceAccount is the SvcAcc specified for chaos runner pods ChaosServiceAccount string `json:"chaosServiceAccount"` //Components contains the image of runnner and monitor pod Components ComponentParams `json:"components"` //Consists of experiments executed by the engine Experiments []ExperimentList `json:"experiments"` //Monitor Enable Status Monitoring bool `json:"monitoring,omitempty"` //JobCleanUpPolicy decides to retain or delete the jobs JobCleanUpPolicy string `json:"jobCleanUpPolicy,omitempty"` }
ChaosEngineSpec defines the desired state of ChaosEngine +k8s:openapi-gen=true ChaosEngineSpec describes a user-facing custom resource which is used by developers to create a chaos profile
func (*ChaosEngineSpec) DeepCopy ¶
func (in *ChaosEngineSpec) DeepCopy() *ChaosEngineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosEngineSpec.
func (*ChaosEngineSpec) DeepCopyInto ¶
func (in *ChaosEngineSpec) DeepCopyInto(out *ChaosEngineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosEngineStatus ¶
type ChaosEngineStatus struct { //Detailed status of individual experiments Experiments []ExperimentStatuses `json:"experiments"` }
ChaosEngineStatus defines the observed state of ChaosEngine +k8s:openapi-gen=true ChaosEngineStatus derives information about status of individual experiments
func (*ChaosEngineStatus) DeepCopy ¶
func (in *ChaosEngineStatus) DeepCopy() *ChaosEngineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosEngineStatus.
func (*ChaosEngineStatus) DeepCopyInto ¶
func (in *ChaosEngineStatus) DeepCopyInto(out *ChaosEngineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosExperiment ¶
type ChaosExperiment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ChaosExperimentSpec `json:"spec,omitempty"` Status ChaosExperimentStatus `json:"status,omitempty"` }
ChaosExperiment is the Schema for the chaosexperiments API +k8s:openapi-gen=true
func (*ChaosExperiment) DeepCopy ¶
func (in *ChaosExperiment) DeepCopy() *ChaosExperiment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosExperiment.
func (*ChaosExperiment) DeepCopyInto ¶
func (in *ChaosExperiment) DeepCopyInto(out *ChaosExperiment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosExperiment) DeepCopyObject ¶
func (in *ChaosExperiment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosExperimentList ¶
type ChaosExperimentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ChaosExperiment `json:"items"` }
ChaosExperimentList contains a list of ChaosExperiment +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*ChaosExperimentList) DeepCopy ¶
func (in *ChaosExperimentList) DeepCopy() *ChaosExperimentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosExperimentList.
func (*ChaosExperimentList) DeepCopyInto ¶
func (in *ChaosExperimentList) DeepCopyInto(out *ChaosExperimentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosExperimentList) DeepCopyObject ¶
func (in *ChaosExperimentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosExperimentSpec ¶
type ChaosExperimentSpec struct { // Definition carries low-level chaos options Definition ExperimentDef `json:"definition"` }
ChaosExperimentSpec defines the desired state of ChaosExperiment +k8s:openapi-gen=true An experiment is the definition of a chaos test and is listed as an item in the chaos engine to be run against a given app.
func (*ChaosExperimentSpec) DeepCopy ¶
func (in *ChaosExperimentSpec) DeepCopy() *ChaosExperimentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosExperimentSpec.
func (*ChaosExperimentSpec) DeepCopyInto ¶
func (in *ChaosExperimentSpec) DeepCopyInto(out *ChaosExperimentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosExperimentStatus ¶
type ChaosExperimentStatus struct { }
ChaosExperimentStatus defines the observed state of ChaosExperiment +k8s:openapi-gen=true
func (*ChaosExperimentStatus) DeepCopy ¶
func (in *ChaosExperimentStatus) DeepCopy() *ChaosExperimentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosExperimentStatus.
func (*ChaosExperimentStatus) DeepCopyInto ¶
func (in *ChaosExperimentStatus) DeepCopyInto(out *ChaosExperimentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosResult ¶
type ChaosResult struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ChaosResultSpec `json:"spec,omitempty"` Status ChaosResultStatus `json:"status,omitempty"` }
ChaosResult is the Schema for the chaosresults API +k8s:openapi-gen=true
func (*ChaosResult) DeepCopy ¶
func (in *ChaosResult) DeepCopy() *ChaosResult
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosResult.
func (*ChaosResult) DeepCopyInto ¶
func (in *ChaosResult) DeepCopyInto(out *ChaosResult)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosResult) DeepCopyObject ¶
func (in *ChaosResult) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosResultList ¶
type ChaosResultList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ChaosResult `json:"items"` }
ChaosResultList contains a list of ChaosResult +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*ChaosResultList) DeepCopy ¶
func (in *ChaosResultList) DeepCopy() *ChaosResultList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosResultList.
func (*ChaosResultList) DeepCopyInto ¶
func (in *ChaosResultList) DeepCopyInto(out *ChaosResultList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosResultList) DeepCopyObject ¶
func (in *ChaosResultList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosResultSpec ¶
type ChaosResultSpec struct { // Definition carries low-level chaos options ExperimentStatus TestStatus `json:"experimentstatus"` }
ChaosResultSpec defines the desired state of ChaosResult +k8s:openapi-gen=true The chaosresult holds the status of a chaos experiment that is listed as an item in the chaos engine to be run against a given app.
func (*ChaosResultSpec) DeepCopy ¶
func (in *ChaosResultSpec) DeepCopy() *ChaosResultSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosResultSpec.
func (*ChaosResultSpec) DeepCopyInto ¶
func (in *ChaosResultSpec) DeepCopyInto(out *ChaosResultSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosResultStatus ¶
type ChaosResultStatus struct { }
ChaosResultStatus defines the observed state of ChaosResult +k8s:openapi-gen=true
func (*ChaosResultStatus) DeepCopy ¶
func (in *ChaosResultStatus) DeepCopy() *ChaosResultStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosResultStatus.
func (*ChaosResultStatus) DeepCopyInto ¶
func (in *ChaosResultStatus) DeepCopyInto(out *ChaosResultStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentParams ¶
type ComponentParams struct { //Contains informations of the monitor pod Monitor MonitorInfo `json:"monitor"` //Contains informations of the the runner pod Runner RunnerInfo `json:"runner"` }
ComponentParams defines information about the runner and monitor image
func (*ComponentParams) DeepCopy ¶
func (in *ComponentParams) DeepCopy() *ComponentParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentParams.
func (*ComponentParams) DeepCopyInto ¶
func (in *ComponentParams) DeepCopyInto(out *ComponentParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ENVPair ¶
ENVPair defines env var list to hold chaos params
func (*ENVPair) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ENVPair.
func (*ENVPair) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExperimentAttributes ¶
type ExperimentAttributes struct { //Execution priority of the chaos experiment Rank uint32 `json:"rank"` //Environment Varibles to override the default values in chaos-experiments Components []ExperimentENV `json:"components"` }
ExperimentAttributes defines attributes of experiments
func (*ExperimentAttributes) DeepCopy ¶
func (in *ExperimentAttributes) DeepCopy() *ExperimentAttributes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExperimentAttributes.
func (*ExperimentAttributes) DeepCopyInto ¶
func (in *ExperimentAttributes) DeepCopyInto(out *ExperimentAttributes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExperimentDef ¶
type ExperimentDef struct { // Default labels of the executor pod // +optional Labels map[string]string `json:"labels"` // Image of the chaos executor Image string `json:"image"` // List of ENV vars passed to executor pod ENVList []ENVPair `json:"env"` // Defines command to invoke experiment Command []string `json:"command"` // Defines arguments to executor's entrypoint command Args []string `json:"args"` }
ExperimentDef defines information about nature of chaos & components subjected to it
func (*ExperimentDef) DeepCopy ¶
func (in *ExperimentDef) DeepCopy() *ExperimentDef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExperimentDef.
func (*ExperimentDef) DeepCopyInto ¶
func (in *ExperimentDef) DeepCopyInto(out *ExperimentDef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExperimentENV ¶
ExperimentENV varibles to override the default values in chaosexperiment
func (*ExperimentENV) DeepCopy ¶
func (in *ExperimentENV) DeepCopy() *ExperimentENV
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExperimentENV.
func (*ExperimentENV) DeepCopyInto ¶
func (in *ExperimentENV) DeepCopyInto(out *ExperimentENV)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExperimentList ¶
type ExperimentList struct { //Name of the chaos experiment Name string `json:"name"` //Holds properties of an experiment listed in the engine Spec ExperimentAttributes `json:"spec"` }
ExperimentList defines information about chaos experiments defined in the chaos engine These experiments are "pulled" as versioned charts from a "hub"
func (*ExperimentList) DeepCopy ¶
func (in *ExperimentList) DeepCopy() *ExperimentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExperimentList.
func (*ExperimentList) DeepCopyInto ¶
func (in *ExperimentList) DeepCopyInto(out *ExperimentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExperimentStatuses ¶
type ExperimentStatuses struct { //Name of experiment whose status is detailed Name string `json:"name"` //Current state of chaos experiment Status string `json:"status"` //Result of a completed chaos experiment Verdict string `json:"verdict"` //Time of last state change of chaos experiment LastUpdateTime metav1.Time `json:"lastUpdateTime"` }
ExperimentStatuses defines information about status of individual experiments These fields are immutable, and are derived by kubernetes(operator)
func (*ExperimentStatuses) DeepCopy ¶
func (in *ExperimentStatuses) DeepCopy() *ExperimentStatuses
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExperimentStatuses.
func (*ExperimentStatuses) DeepCopyInto ¶
func (in *ExperimentStatuses) DeepCopyInto(out *ExperimentStatuses)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitorInfo ¶
type MonitorInfo struct { //Image of the monitor pod Image string `json:"image"` }
MonitorInfo defines the information of the monitor pod
func (*MonitorInfo) DeepCopy ¶
func (in *MonitorInfo) DeepCopy() *MonitorInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorInfo.
func (*MonitorInfo) DeepCopyInto ¶
func (in *MonitorInfo) DeepCopyInto(out *MonitorInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerInfo ¶
type RunnerInfo struct { //Image of the runner pod Image string `json:"image"` }
RunnerInfo defines the information of the runnerinfo pod
func (*RunnerInfo) DeepCopy ¶
func (in *RunnerInfo) DeepCopy() *RunnerInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerInfo.
func (*RunnerInfo) DeepCopyInto ¶
func (in *RunnerInfo) DeepCopyInto(out *RunnerInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TestStatus ¶
type TestStatus struct { // Phase defines whether an experiment is running or completed Phase string `json:"phase"` // Verdict defines whether an experiment result is pass or fail Verdict string `json:"verdict"` }
TestStatus defines information about the status and results of a chaos experiment
func (*TestStatus) DeepCopy ¶
func (in *TestStatus) DeepCopy() *TestStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestStatus.
func (*TestStatus) DeepCopyInto ¶
func (in *TestStatus) DeepCopyInto(out *TestStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.