litmus/mkdocs/docs/chaos-scheduler-v1.10.0.yaml

340 lines
12 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: litmus
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: scheduler
namespace: litmus
labels:
name: scheduler
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRole
metadata:
name: scheduler
labels:
name: scheduler
rules:
- apiGroups: ["","apps","batch","litmuschaos.io","argoproj.io"]
resources: ["pods","jobs","deployments","daemonsets","statefulsets","events","configmaps","services","chaosengines","chaosexperiments","chaosresults","chaosschedules","rollouts"]
verbs: ["get","create","update","patch","delete","list","watch","deletecollection"]
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: scheduler
labels:
name: scheduler
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: scheduler
subjects:
- kind: ServiceAccount
name: scheduler
namespace: litmus
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: chaos-scheduler
namespace: litmus
spec:
replicas: 1
selector:
matchLabels:
name: chaos-scheduler
template:
metadata:
labels:
name: chaos-scheduler
spec:
serviceAccountName: scheduler
containers:
- name: chaos-scheduler
image: litmuschaos/chaos-scheduler:1.10.0
command:
- chaos-scheduler
imagePullPolicy: Always
env:
- name: WATCH_NAMESPACE
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: OPERATOR_NAME
value: "chaos-scheduler"
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: chaosschedules.litmuschaos.io
spec:
group: litmuschaos.io
names:
kind: ChaosSchedule
listKind: ChaosScheduleList
plural: chaosschedules
singular: chaosschedule
scope: Namespaced
subresources:
validation:
openAPIV3Schema:
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
type: object
properties:
engineTemplateSpec:
type: object
properties:
monitoring:
type: boolean
jobCleanUpPolicy:
type: string
pattern: "^(delete|retain)$"
annotationCheck:
type: string
pattern: "^(true|false)$"
appinfo:
type: object
properties:
appkind:
type: string
pattern: "^(deployment|statefulset|daemonset|deploymentconfig|rollout)$"
applabel:
pattern: "([a-z0-9A-Z_\\.-/]+)=([a-z0-9A-Z_\\.-/_]+)"
type: string
appns:
type: string
auxiliaryAppInfo:
type: string
engineState:
type: string
pattern: "^(active|stop|initialized|stopped)$"
chaosServiceAccount:
type: string
components:
type: object
properties:
runner:
type: object
properties:
image:
type: string
type:
type: string
pattern: "^(go)$"
runnerannotation:
type: object
additionalProperties:
type: string
properties:
key:
type: string
minLength: 1
allowEmptyValue: false
value:
type: string
minLength: 1
allowEmptyValue: false
experiments:
type: array
items:
type: object
properties:
name:
type: string
spec:
type: object
properties:
probe:
type: array
items:
type: object
properties:
name:
type: string
type:
type: string
k8sProbe/inputs:
type: object
properties:
command:
type: object
properties:
group:
type: string
version:
type: string
resource:
type: string
namespace:
type: string
fieldSelector:
type: string
labelSelector:
type: string
expectedResult:
type: string
cmdProbe/inputs:
type: object
properties:
command:
type: string
expectedResult:
type: string
source:
type: string
httpProbe/inputs:
type: object
properties:
url:
type: string
expectedResponseCode:
type: string
runProperties:
type: object
properties:
probeTimeout:
type: integer
interval:
type: integer
retry:
type: integer
mode:
type: string
components:
type: object
properties:
statusCheckTimeouts:
type: object
properties:
delay:
type: integer
timeout:
type: integer
nodeSelector:
type: object
minLength: 1
experimentImage:
type: string
env:
type: array
items:
type: object
properties:
name:
type: string
value:
type: string
configMaps:
type: array
items:
type: object
properties:
name:
type: string
mountPath:
type: string
secrets:
type: array
items:
type: object
properties:
name:
type: string
mountPath:
type: string
experimentannotation:
type: object
additionalProperties:
type: string
properties:
key:
type: string
minLength: 1
allowEmptyValue: false
value:
type: string
minLength: 1
allowEmptyValue: false
schedule:
oneOf:
- required:
- now
- required:
- once
- required:
- repeat
properties:
now:
type: boolean
once:
properties:
executionTime:
format: date-time
type: date
type: object
repeat:
properties:
timeRange:
properties:
endTime:
format: date-time
type: date
startTime:
format: date-time
type: date
type: object
workkHours:
properties:
includedHours:
type: string
type: object
required:
- includedHours
workDays:
properties:
includedDays:
pattern: ((Mon|Tue|Wed|Thu|Fri|Sat|Sun)(,))*(Mon|Tue|Wed|Thu|Fri|Sat|Sun)
type: string
type: object
required:
- includedDays
properties:
properties:
minChaosInterval:
pattern: (([1-6][0-9]|[1-9])m)|(\d+h)
type: string
random:
type: boolean
type: object
required:
- minChaosInterval
type: object
required:
- properties
type: object
status:
type: object
version: v1alpha1
versions:
- name: v1alpha1
served: true
storage: true