...

Package model

import "github.com/chaos-mesh/chaos-mesh/pkg/ctrl/server/model"
Overview
Index

Overview ▾

Variables

var AllComponent = []Component{
    ComponentManager,
    ComponentDaemon,
    ComponentDashboard,
    ComponentDNSServer,
}

type Cgroups

type Cgroups struct {
    Raw    string         `json:"raw"`
    CPU    *CgroupsCPU    `json:"cpu"`
    Memory *CgroupsMemory `json:"memory"`
}

type CgroupsCPU

type CgroupsCPU struct {
    Quota  int `json:"quota"`
    Period int `json:"period"`
}

type CgroupsMemory

type CgroupsMemory struct {
    Limit int64 `json:"limit"`
}

type Component

type Component string
const (
    ComponentManager   Component = "MANAGER"
    ComponentDaemon    Component = "DAEMON"
    ComponentDashboard Component = "DASHBOARD"
    ComponentDNSServer Component = "DNSSERVER"
)

func (Component) IsValid

func (e Component) IsValid() bool

func (Component) MarshalGQL

func (e Component) MarshalGQL(w io.Writer)

func (Component) String

func (e Component) String() string

func (*Component) UnmarshalGQL

func (e *Component) UnmarshalGQL(v interface{}) error

type Fd

type Fd struct {
    Fd     string `json:"fd"`
    Target string `json:"target"`
}

type KillProcessResult

type KillProcessResult struct {
    Pid     string `json:"pid"`
    Command string `json:"command"`
}

type MutablePod

type MutablePod struct {
    Pod           *v1.Pod              `json:"pod"`
    KillProcesses []*KillProcessResult `json:"killProcesses"`
    CleanTcs      []string             `json:"cleanTcs"`
    CleanIptables []string             `json:"cleanIptables"`
}

type Namespace

type Namespace struct {
    Ns              string                      `json:"ns"`
    Component       []*v1.Pod                   `json:"component"`
    Pod             []*v1.Pod                   `json:"pod"`
    Stresschaos     []*v1alpha1.StressChaos     `json:"stresschaos"`
    Iochaos         []*v1alpha1.IOChaos         `json:"iochaos"`
    Podiochaos      []*v1alpha1.PodIOChaos      `json:"podiochaos"`
    Httpchaos       []*v1alpha1.HTTPChaos       `json:"httpchaos"`
    Podhttpchaos    []*v1alpha1.PodHttpChaos    `json:"podhttpchaos"`
    Networkchaos    []*v1alpha1.NetworkChaos    `json:"networkchaos"`
    Podnetworkchaos []*v1alpha1.PodNetworkChaos `json:"podnetworkchaos"`
}

type PodSelectorInput

type PodSelectorInput struct {
    Namespaces          []string               `json:"namespaces"`
    Nodes               []string               `json:"nodes"`
    Pods                map[string]interface{} `json:"pods"`
    NodeSelectors       map[string]interface{} `json:"nodeSelectors"`
    FieldSelectors      map[string]interface{} `json:"fieldSelectors"`
    LabelSelectors      map[string]interface{} `json:"labelSelectors"`
    AnnotationSelectors map[string]interface{} `json:"annotationSelectors"`
    PodPhaseSelectors   []string               `json:"podPhaseSelectors"`
}

type PodStressChaos

type PodStressChaos struct {
    StressChaos   *v1alpha1.StressChaos `json:"stressChaos"`
    Pod           *v1.Pod               `json:"pod"`
    Cgroups       *Cgroups              `json:"cgroups"`
    ProcessStress []*ProcessStress      `json:"processStress"`
}

type Process

type Process struct {
    Pod     *v1.Pod `json:"pod"`
    Pid     string  `json:"pid"`
    Command string  `json:"command"`
    Fds     []*Fd   `json:"fds"`
}

type ProcessStress

type ProcessStress struct {
    Process *Process `json:"process"`
    Cgroup  string   `json:"cgroup"`
}