experiments

package
v1.2.7 Latest Latest
Warning

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

Go to latest
Published: Jul 1, 2022 License: MIT Imports: 1 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Base

type Base struct {
	Name string
	// Namespace is a namespace where experiment entity will be stored
	Namespace string
}

Base base experiment data, name and namespace where to store CRD entities

type CPUHog

type CPUHog struct {
	Base
	Mode        string
	LabelKey    string
	LabelValue  string
	Workers     int
	Load        int
	OptsCPU     int
	OptsTimeout int
	OptsHDD     int
	Duration    time.Duration
}

CPUHog struct for cpu hog testing

func (*CPUHog) Filename

func (e *CPUHog) Filename() string

Filename returns the cpu chaos yaml

func (*CPUHog) Resource

func (e *CPUHog) Resource() string

Resource returns the resource

func (*CPUHog) SetBase

func (e *CPUHog) SetBase(base Base)

SetBase sets the base

type ContainerKill

type ContainerKill struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	Container  string
}

ContainerKill struct for continer kill testing

func (*ContainerKill) Filename

func (e *ContainerKill) Filename() string

Filename returns the filename for container kill

func (*ContainerKill) Resource

func (e *ContainerKill) Resource() string

Resource returns the resource

func (*ContainerKill) SetBase

func (e *ContainerKill) SetBase(base Base)

SetBase sets the base

type DNSChaos

type DNSChaos struct {
	Base
	Duration time.Duration
	Patterns []string
}

DNSChaos stuct with objects for DNS chaos testing

func (*DNSChaos) Filename

func (e *DNSChaos) Filename() string

Filename returns the file name of the dns chaos yaml

func (*DNSChaos) Resource

func (e *DNSChaos) Resource() string

Resource returns the resource for dns chaos

func (*DNSChaos) SetBase

func (e *DNSChaos) SetBase(base Base)

SetBase sets the base

type IODelay

type IODelay struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	VolumePath string
	Path       string
	Delay      time.Duration
	Percent    int
	Duration   time.Duration
}

IODelay struct contains objects for IODelay testing

func (*IODelay) Filename

func (e *IODelay) Filename() string

Filename returns the io delay yaml

func (*IODelay) Resource

func (e *IODelay) Resource() string

Resource returns the resource

func (*IODelay) SetBase

func (e *IODelay) SetBase(base Base)

SetBase sets the base

type IOFault

type IOFault struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	VolumePath string
	Path       string
	Errno      int
	Percent    int
	Duration   time.Duration
}

IOFault struct contains objects for IO Fault testing

func (*IOFault) Filename

func (e *IOFault) Filename() string

Filename returns the io fault yaml

func (*IOFault) Resource

func (e *IOFault) Resource() string

Resource returns the resource

func (*IOFault) SetBase

func (e *IOFault) SetBase(base Base)

SetBase sets the base

type NetworkBandwidth

type NetworkBandwidth struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	// kbps
	Rate     string
	Limit    int
	Buffer   int
	PeakRate int
	MinBurst int
	Duration time.Duration
}

NetworkBandwidth struct with objects for NetworkConfig Bandwidth testing

func (*NetworkBandwidth) Filename

func (e *NetworkBandwidth) Filename() string

Filename returns the file name of the network bandwidth yaml

func (*NetworkBandwidth) Resource

func (e *NetworkBandwidth) Resource() string

Resource returns the resource

func (*NetworkBandwidth) SetBase

func (e *NetworkBandwidth) SetBase(base Base)

SetBase sets the base

type NetworkCorrupt

type NetworkCorrupt struct {
	Base
	Mode        string
	LabelKey    string
	LabelValue  string
	Corrupt     int
	Correlation int
	Duration    time.Duration
}

NetworkCorrupt struct for network corruption

func (*NetworkCorrupt) Filename

func (e *NetworkCorrupt) Filename() string

Filename returns the filename for a network corruption

func (*NetworkCorrupt) Resource

func (e *NetworkCorrupt) Resource() string

Resource returns the resource

func (*NetworkCorrupt) SetBase

func (e *NetworkCorrupt) SetBase(base Base)

SetBase sets the base

type NetworkDelay

type NetworkDelay struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	Latency    time.Duration
	Duration   time.Duration
}

NetworkDelay stuct containing definitions for a network delay

func (*NetworkDelay) Filename

func (e *NetworkDelay) Filename() string

Filename returns the file name for network delay

func (*NetworkDelay) Resource

func (e *NetworkDelay) Resource() string

Resource returns the resource

func (*NetworkDelay) SetBase

func (e *NetworkDelay) SetBase(base Base)

SetBase sets the base

type NetworkDuplicate

type NetworkDuplicate struct {
	Base
	Mode        string
	LabelKey    string
	LabelValue  string
	Duplicate   int
	Correlation int
	Duration    time.Duration
}

NetworkDuplicate struct contains objects for NetworkConfig Duplication testing

func (*NetworkDuplicate) Filename

func (e *NetworkDuplicate) Filename() string

Filename returns the network duplicate yaml

func (*NetworkDuplicate) Resource

func (e *NetworkDuplicate) Resource() string

Resource returns the resource

func (*NetworkDuplicate) SetBase

func (e *NetworkDuplicate) SetBase(base Base)

SetBase sets the base

type NetworkLoss

type NetworkLoss struct {
	Base
	Mode        string
	LabelKey    string
	LabelValue  string
	Loss        int
	Correlation int
	Duration    time.Duration
}

NetworkLoss struct with objects for NetworkConfig Loss testing

func (*NetworkLoss) Filename

func (e *NetworkLoss) Filename() string

Filename returns the network loss yaml

func (*NetworkLoss) Resource

func (e *NetworkLoss) Resource() string

Resource returns the resource

func (*NetworkLoss) SetBase

func (e *NetworkLoss) SetBase(base Base)

SetBase sets the base

type NetworkPartition

type NetworkPartition struct {
	Base
	FromMode       string
	FromLabelKey   string
	FromLabelValue string
	ToMode         string
	ToLabelKey     string
	ToLabelValue   string
}

NetworkPartition struct with objects for NetworkConfig Partition testing

func (*NetworkPartition) Filename

func (e *NetworkPartition) Filename() string

Filename returns the network partition yaml

func (*NetworkPartition) Resource

func (e *NetworkPartition) Resource() string

Resource is a CRD resource that can be found in spec.names.singular

func (*NetworkPartition) SetBase

func (e *NetworkPartition) SetBase(base Base)

SetBase sets the base

type PodFailure

type PodFailure struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	Duration   time.Duration
}

PodFailure struct contains objects for Pod Failure testing

func (*PodFailure) Filename

func (e *PodFailure) Filename() string

Filename returns the pod failure yaml

func (*PodFailure) Resource

func (e *PodFailure) Resource() string

Resource returns the resource

func (*PodFailure) SetBase

func (e *PodFailure) SetBase(base Base)

SetBase sets the base

type PodKill

type PodKill struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
}

PodKill struct for pod kill testing

func (*PodKill) Filename

func (e *PodKill) Filename() string

Filename returns the file for pod kill

func (*PodKill) Resource

func (e *PodKill) Resource() string

Resource returns the resource

func (*PodKill) SetBase

func (e *PodKill) SetBase(base Base)

SetBase sets the base

type TimeShift

type TimeShift struct {
	Base
	Mode       string
	LabelKey   string
	LabelValue string
	TimeOffset time.Duration
	Duration   time.Duration
}

TimeShift struct to contain info needed for TimeShift testing

func (*TimeShift) Filename

func (e *TimeShift) Filename() string

Filename returns the filename for a time shift

func (*TimeShift) Resource

func (e *TimeShift) Resource() string

Resource returns the resource

func (*TimeShift) SetBase

func (e *TimeShift) SetBase(base Base)

SetBase sets the base

Jump to

Keyboard shortcuts

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