refactors directory and file structure

Signed-off-by: neelanjan00 <neelanjan.manna@harness.io>
This commit is contained in:
neelanjan00
2023-06-05 13:15:56 +05:30
parent 9bf371a651
commit ae8467237a
840 changed files with 6787 additions and 43442 deletions

View File

@@ -0,0 +1,42 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
name: gcp-chaos
spec:
engineState: 'active'
chaosServiceAccount: litmus-admin
experiments:
- name: gcp-vm-disk-loss-by-label
spec:
components:
env:
# set chaos duration (in sec) as desired
- name: TOTAL_CHAOS_DURATION
value: '30'
# set chaos interval (in sec) as desired
- name: CHAOS_INTERVAL
value: '30'
# set the GCP project id
- name: GCP_PROJECT_ID
value: ''
# set the zone in which all the disks are created
# all the disks must exist in the same zone
- name: ZONES
value: ''
# set the label of the target disk volumes
- name: DISK_VOLUME_LABEL
value: ''
# set the percentage value of the disks with the given label
# which should be targeted as part of the chaos injection
- name: DISK_AFFECTED_PERC
value: ''
# parallel or serial; determines how chaos is injected
- name: SEQUENCE
value: 'parallel'

View File

@@ -0,0 +1,89 @@
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Causes loss of a non-boot storage persistent disk from a GCP VM instance filtered by a label for a specified duration before attaching them back
kind: ChaosExperiment
metadata:
name: gcp-vm-disk-loss-by-label
labels:
name: gcp-vm-disk-loss-by-label
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: chaosexperiment
app.kubernetes.io/version: ci
spec:
definition:
scope: Cluster
permissions:
# Create and monitor the experiment & helper pods
- apiGroups: [""]
resources: ["pods"]
verbs: ["create", "delete", "get", "list", "patch", "update", "deletecollection"]
# Performs CRUD operations on the events inside chaosengine and chaosresult
- apiGroups: [""]
resources: ["events"]
verbs: ["create", "get", "list", "patch", "update"]
# Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- apiGroups: [""]
resources: ["secrets", "configmaps"]
verbs: ["get", "list"]
# Track and get the runner, experiment, and helper pods log
- apiGroups: [""]
resources: ["pods/log"]
verbs: ["get", "list", "watch"]
# for configuring and monitor the experiment job by the chaos-runner pod
- apiGroups: ["batch"]
resources: ["jobs"]
verbs: ["create", "list", "get", "delete", "deletecollection"]
# for creation, status polling and deletion of litmus chaos resources used within a chaos workflow
- apiGroups: ["litmuschaos.io"]
resources: ["chaosengines", "chaosexperiments", "chaosresults"]
verbs: ["create", "list", "get", "patch", "update", "delete"]
image: "chaosnative/go-runner:ci"
imagePullPolicy: Always
args:
- -c
- ./experiments -name gcp-vm-disk-loss-by-label
command:
- /bin/bash
env:
# set chaos duration (in sec) as desired
- name: TOTAL_CHAOS_DURATION
value: '30'
# set chaos interval (in sec) as desired
- name: CHAOS_INTERVAL
value: '30'
# set the GCP project id
- name: GCP_PROJECT_ID
value: ''
# set the zone in which all the disks are created
# all the disks must exist in the same zone
- name: ZONES
value: ''
# set the label of the target disk volumes
- name: DISK_VOLUME_LABEL
value: ''
# set the percentage value of the disks with the given label
# which should be targeted as part of the chaos injection
- name: DISK_AFFECTED_PERC
value: ''
- name: DEFAULT_HEALTH_CHECK
value: 'false'
- name: SEQUENCE
value: 'parallel'
labels:
name: gcp-vm-disk-loss-by-label
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: experiment-job
app.kubernetes.io/version: ci
secrets:
- name: cloud-secret
mountPath: /tmp/

View File

@@ -0,0 +1,28 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChartServiceVersion
metadata:
name: gcp-vm-disk-loss-by-label
version: 0.1.0
annotations:
categories: GCP
vendor: Harness
spec:
displayName: GCP VM Disk Loss By Label
categoryDescription: >
Causes loss of a non-boot storage persistent disk from a GCP VM instance filtered by a label for a specified duration before attaching them back.
keywords:
- GCP
platforms:
- "Minikube"
minKubeVersion: 1.12.0
labels:
app.kubernetes.io/component: chartserviceversion
app.kubernetes.io/version: ci
links:
- name: Documentation
url: https://docs.harness.io/category/kl0mxwpfw1-hce-category
icon:
- url:
mediatype: ""

View File

@@ -0,0 +1,41 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
name: gcp-chaos
namespace: default
spec:
# It can be active/stop
engineState: 'active'
chaosServiceAccount: litmus-admin
experiments:
- name: gcp-vm-disk-loss
spec:
components:
env:
# set chaos duration (in sec) as desired
- name: TOTAL_CHAOS_DURATION
value: '30'
# set chaos interval (in sec) as desired
- name: CHAOS_INTERVAL
value: '30'
# set the GCP project id
- name: GCP_PROJECT_ID
value: ''
# set the disk volume name(s) as comma seperated values
# eg. volume1,volume2,...
- name: DISK_VOLUME_NAMES
value: ''
# set the disk zone(s) as comma seperated values in the corresponding
# order of DISK_VOLUME_NAME
# eg. zone1,zone2,...
- name: ZONES
value: ''
# parallel or serial; determines how chaos is injected
- name: SEQUENCE
value: 'parallel'

View File

@@ -0,0 +1,93 @@
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Causes loss of a non-boot storage persistent disk from a GCP VM instance for a specified duration before attaching them back
kind: ChaosExperiment
metadata:
name: gcp-vm-disk-loss
labels:
name: gcp-vm-disk-loss
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: chaosexperiment
app.kubernetes.io/version: ci
spec:
definition:
scope: Cluster
permissions:
# Create and monitor the experiment & helper pods
- apiGroups: [""]
resources: ["pods"]
verbs: ["create", "delete", "get", "list", "patch", "update", "deletecollection"]
# Performs CRUD operations on the events inside chaosengine and chaosresult
- apiGroups: [""]
resources: ["events"]
verbs: ["create", "get", "list", "patch", "update"]
# Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- apiGroups: [""]
resources: ["secrets", "configmaps"]
verbs: ["get", "list"]
# Track and get the runner, experiment, and helper pods log
- apiGroups: [""]
resources: ["pods/log"]
verbs: ["get", "list", "watch"]
# for configuring and monitor the experiment job by the chaos-runner pod
- apiGroups: ["batch"]
resources: ["jobs"]
verbs: ["create", "list", "get", "delete", "deletecollection"]
# for creation, status polling and deletion of litmus chaos resources used within a chaos workflow
- apiGroups: ["litmuschaos.io"]
resources: ["chaosengines", "chaosexperiments", "chaosresults"]
verbs: ["create", "list", "get", "patch", "update", "delete"]
image: "chaosnative/go-runner:ci"
imagePullPolicy: Always
args:
- -c
- ./experiments -name gcp-vm-disk-loss
command:
- /bin/bash
env:
- name: TOTAL_CHAOS_DURATION
value: '30'
- name: CHAOS_INTERVAL
value: '30'
# Period to wait before and after injection of chaos in sec
- name: RAMP_TIME
value: ''
# parallel or serial; determines how chaos is injected
- name: SEQUENCE
value: 'parallel'
# set the GCP project id
- name: GCP_PROJECT_ID
value: ''
# set the disk volume name(s) as comma seperated values
# eg. volume1,volume2,...
- name: DISK_VOLUME_NAMES
value: ''
# set the disk zone(s) as comma seperated values in the corresponding
# order of DISK_VOLUME_NAME
# eg. zone1,zone2,...
- name: ZONES
value: ''
- name: DEFAULT_HEALTH_CHECK
value: 'false'
# parallel or serial; determines how chaos is injected
- name: SEQUENCE
value: 'parallel'
labels:
name: gcp-vm-disk-loss
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: experiment-job
app.kubernetes.io/version: ci
secrets:
- name: cloud-secret
mountPath: /tmp/

View File

@@ -0,0 +1,27 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChartServiceVersion
metadata:
name: gcp-vm-disk-loss
version: 0.1.0
annotations:
categories: GCP
vendor: Harness
spec:
displayName: GCP VM Disk Loss
categoryDescription: >
Causes loss of a non-boot storage persistent disk from a GCP VM instance for a specified duration before attaching them back.
keywords:
- GCP
platforms:
- GCP
minKubeVersion: 1.12.0
labels:
app.kubernetes.io/component: chartserviceversion
app.kubernetes.io/version: ci
links:
- name: Documentation
url: https://docs.harness.io/category/kl0mxwpfw1-hce-category
icon:
- url:
mediatype: ""

View File

@@ -0,0 +1,47 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
name: gcp-chaos
spec:
# It can be active/stop
engineState: 'active'
chaosServiceAccount: litmus-admin
# It can be delete/retain
experiments:
- name: gcp-vm-instance-stop-by-label
spec:
components:
env:
# set chaos duration (in sec) as desired
- name: TOTAL_CHAOS_DURATION
value: '30'
# set chaos interval (in sec) as desired
- name: CHAOS_INTERVAL
value: '30'
- name: SEQUENCE
value: 'parallel'
# GCP project ID to which the VM instances belong
- name: GCP_PROJECT_ID
value: ''
# Label of the target VM instance(s)
- name: INSTANCE_LABEL
value: ''
# Zone in which the target VM instance(s) filtered by the label exist
# all the instances should lie in a single zone
- name: ZONES
value: ''
# enable it if the target instances are a part of a managed instance group
- name: MANAGED_INSTANCE_GROUP
value: 'disable'
# set the percentage value of the instances with the given label
# which should be targeted as part of the chaos injection
- name: INSTANCE_AFFECTED_PERC
value: ''

View File

@@ -0,0 +1,97 @@
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Stops GCP VM instances and GKE nodes filtered by a label for a specified duration and later restarts them
kind: ChaosExperiment
metadata:
name: gcp-vm-instance-stop-by-label
labels:
name: gcp-vm-instance-stop-by-label
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: chaosexperiment
app.kubernetes.io/version: ci
spec:
definition:
scope: Cluster
permissions:
# Create and monitor the experiment & helper pods
- apiGroups: [""]
resources: ["pods"]
verbs: ["create", "delete", "get", "list", "patch", "update", "deletecollection"]
# Performs CRUD operations on the events inside chaosengine and chaosresult
- apiGroups: [""]
resources: ["events"]
verbs: ["create", "get", "list", "patch", "update"]
# Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- apiGroups: [""]
resources: ["secrets", "configmaps"]
verbs: ["get", "list"]
# Track and get the runner, experiment, and helper pods log
- apiGroups: [""]
resources: ["pods/log"]
verbs: ["get", "list", "watch"]
# for configuring and monitor the experiment job by the chaos-runner pod
- apiGroups: ["batch"]
resources: ["jobs"]
verbs: ["create", "list", "get", "delete", "deletecollection"]
# for creation, status polling and deletion of litmus chaos resources used within a chaos workflow
- apiGroups: ["litmuschaos.io"]
resources: ["chaosengines", "chaosexperiments", "chaosresults"]
verbs: ["create", "list", "get", "patch", "update", "delete"]
# for experiment to perform node status checks
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list"]
image: "chaosnative/go-runner:ci"
imagePullPolicy: Always
args:
- -c
- ./experiments -name gcp-vm-instance-stop-by-label
command:
- /bin/bash
env:
# set chaos duration (in sec) as desired
- name: TOTAL_CHAOS_DURATION
value: '30'
# set chaos interval (in sec) as desired
- name: CHAOS_INTERVAL
value: '30'
- name: SEQUENCE
value: 'parallel'
# GCP project ID to which the VM instances belong
- name: GCP_PROJECT_ID
value: ''
# Label of the target VM instance(s)
- name: INSTANCE_LABEL
value: ''
# Zone in which the target VM instance(s) filtered by the label exist
# all the instances should lie in a single zone
- name: ZONES
value: ''
# enable it if the target instance is a part of a managed instance group
- name: MANAGED_INSTANCE_GROUP
value: 'disable'
# set the percentage value of the instances with the given label
# which should be targeted as part of the chaos injection
- name: INSTANCE_AFFECTED_PERC
value: ''
- name: DEFAULT_HEALTH_CHECK
value: 'false'
labels:
name: gcp-vm-instance-stop-by-label
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: experiment-job
app.kubernetes.io/version: ci
secrets:
- name: cloud-secret
mountPath: /tmp/

View File

@@ -0,0 +1,27 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChartServiceVersion
metadata:
name: gcp-vm-instance-stop-by-label
version: 0.1.0
annotations:
categories: GCP
vendor: Harness
spec:
displayName: GCP VM Instance Stop By Label
categoryDescription: >
Stops GCP VM instances and GKE nodes filtered by a label for a specified duration and later restarts them.
keywords:
- GCP
platforms:
- "Minikube"
minKubeVersion: 1.12.0
labels:
app.kubernetes.io/component: chartserviceversion
app.kubernetes.io/version: ci
links:
- name: Documentation
url: https://docs.harness.io/category/kl0mxwpfw1-hce-category
icon:
- url:
mediatype: ""

View File

@@ -0,0 +1,43 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
name: gcp-vm-chaos
spec:
engineState: 'active'
chaosServiceAccount: gcp-vm-instance-stop-sa
experiments:
- name: gcp-vm-instance-stop
spec:
components:
env:
# set chaos duration (in sec) as desired
- name: TOTAL_CHAOS_DURATION
value: '30'
# set chaos interval (in sec) as desired
- name: CHAOS_INTERVAL
value: '30'
# Instance name of the target VM instance(s)
# Multiple instance names can be provided as comma separated values ex: instance1,instance2
- name: VM_INSTANCE_NAMES
value: ''
# GCP project ID to which the VM instances belong
- name: GCP_PROJECT_ID
value: ''
# Instance zone(s) of the target VM instance(s)
# If more than one instance is targetted, provide zone for each in the order of their
# respective instance name in VM_INSTANCE_NAME as comma separated values ex: zone1,zone2
- name: ZONES
value: ''
# enable it if the target instance is a part of a managed instance group.
- name: MANAGED_INSTANCE_GROUP
value: 'disable'
# parallel or serial; determines how chaos is injected
- name: SEQUENCE
value: 'parallel'

View File

@@ -0,0 +1,101 @@
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Stops GCP VM instances and GKE nodes for a specified duration and later restarts them
kind: ChaosExperiment
metadata:
name: gcp-vm-instance-stop
labels:
name: gcp-vm-instance-stop
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: chaosexperiment
app.kubernetes.io/version: ci
spec:
definition:
scope: Cluster
permissions:
# Create and monitor the experiment & helper pods
- apiGroups: [""]
resources: ["pods"]
verbs: ["create", "delete", "get", "list", "patch", "update", "deletecollection"]
# Performs CRUD operations on the events inside chaosengine and chaosresult
- apiGroups: [""]
resources: ["events"]
verbs: ["create", "get", "list", "patch", "update"]
# Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- apiGroups: [""]
resources: ["secrets", "configmaps"]
verbs: ["get", "list"]
# Track and get the runner, experiment, and helper pods log
- apiGroups: [""]
resources: ["pods/log"]
verbs: ["get", "list", "watch"]
# for configuring and monitor the experiment job by the chaos-runner pod
- apiGroups: ["batch"]
resources: ["jobs"]
verbs: ["create", "list", "get", "delete", "deletecollection"]
# for creation, status polling and deletion of litmus chaos resources used within a chaos workflow
- apiGroups: ["litmuschaos.io"]
resources: ["chaosengines", "chaosexperiments", "chaosresults"]
verbs: ["create", "list", "get", "patch", "update", "delete"]
# for experiment to perform node status checks
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list"]
image: "chaosnative/go-runner:ci"
imagePullPolicy: Always
args:
- -c
- ./experiments -name gcp-vm-instance-stop
command:
- /bin/bash
env:
- name: TOTAL_CHAOS_DURATION
value: '30'
- name: CHAOS_INTERVAL
value: '30'
# parallel or serial; determines how the VM instances are terminated, all at once or one at a time
- name: SEQUENCE
value: 'parallel'
# period to wait before and after injection of chaos in sec
- name: RAMP_TIME
value: ''
# enable or disable; shall be set to enable if the target instances are a part of a managed instance group
- name: MANAGED_INSTANCE_GROUP
value: 'disable'
# Instance name of the target VM instance(s)
# Multiple instance names can be provided as comma separated values ex: instance1,instance2
- name: VM_INSTANCE_NAMES
value: ''
# GCP project ID to which the VM instances belong
- name: GCP_PROJECT_ID
value: ''
# Instance zone(s) of the target VM instance(s)
# If more than one instance is targetted, provide zone for each in the order of their
# respective instance name in VM_INSTANCE_NAME as comma separated values ex: zone1,zone2
- name: ZONES
value: ''
- name: DEFAULT_HEALTH_CHECK
value: 'false'
# parallel or serial; determines how chaos is injected
- name: SEQUENCE
value: 'parallel'
labels:
name: gcp-vm-instance-stop
app.kubernetes.io/part-of: litmus
app.kubernetes.io/component: experiment-job
app.kubernetes.io/version: ci
secrets:
- name: cloud-secret
mountPath: /tmp/

View File

@@ -0,0 +1,26 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChartServiceVersion
metadata:
name: gcp-vm-instance-stop
version: 0.1.0
annotations:
categories: gcp
spec:
displayName: GCP VM Instance Stop
categoryDescription: >
Stops GCP VM instances and GKE nodes for a specified duration and later restarts them.
keywords:
- GCP
platforms:
- GCP
minKubeVersion: 1.12.0
labels:
app.kubernetes.io/component: chartserviceversion
app.kubernetes.io/version: ci
links:
- name: Documentation
url: https://docs.harness.io/category/kl0mxwpfw1-hce-category
icon:
- url:
mediatype: ""

View File

@@ -0,0 +1,42 @@
---
apiVersion: litmuschaos.io/v1alpha1
kind: ChartServiceVersion
metadata:
name: gcp
version: 0.1.0
annotations:
categories: GCP
chartDescription: Injects faults on GCP services
executionPlane: "kubernetes"
spec:
displayName: GCP
categoryDescription: >
GCP fault disrupts state of GCP resources running part of the GCP services
faults:
- name: gcp-vm-instance-stop
description: It injects gcp-vm-instance-stop fault into GCP VMs.
displayName: "GCP VM Instance Stop"
- name: gcp-vm-instance-stop-by-label
description: It injects gcp-vm-instance-stop-by-label fault into GCP VMs.
displayName: "GCP VM Instance Stop By Label"
- name: gcp-vm-disk-loss-by-label
description: It injects gcp-vm-disk-loss-by-label fault into GCP VMs.
displayName: "GCP VM Disk Loss By Label"
- name: gcp-vm-disk-loss
description: It injects gcp-vm-disk-loss fault into GCP VMs.
displayName: "GCP VM Disk Loss"
keywords:
- GCP
minKubeVersion: 1.12.0
links:
- name: Kubernetes Website
url: https://kubernetes.io
- name: Source Code
url: https://github.com/kubernetes/kubernetes
- name: Kubernetes Slack
url: https://slack.kubernetes.io/
- name: Documentation
url: ""
icon:
- url: https://raw.githubusercontent.com/litmuschaos/charthub.litmuschaos.io/master/public/litmus.ico
mediatype: image/png

View File

@@ -0,0 +1,15 @@
---
packageName: gcp
faults:
- name: gcp-vm-instance-stop
CSV: gcp-vm-instance-stop.chartserviceversion.yaml
desc: "gcp-vm-instance-stop"
- name: gcp-vm-instance-stop-by-label
CSV: gcp-vm-instance-stop-by-label.chartserviceversion.yaml
desc: "gcp-vm-instance-stop-by-label"
- name: gcp-vm-disk-loss-by-label
CSV: gcp-vm-disk-loss-by-label.chartserviceversion.yaml
desc: "gcp-vm-disk-loss-by-label"
- name: gcp-vm-disk-loss
CSV: gcp-vm-disk-loss.chartserviceversion.yaml
desc: "gcp-vm-disk-loss"

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB