mirror of
https://github.com/lucky-sideburn/kubeinvaders.git
synced 2026-04-06 10:26:52 +00:00
109 lines
2.7 KiB
YAML
109 lines
2.7 KiB
YAML
---
|
|
kind: Template
|
|
apiVersion: v1
|
|
metadata:
|
|
name: kubeinvaders
|
|
annotations:
|
|
"openshift.io/display-name": Kubeinvaders
|
|
description: Chaos Engineering Tool for Kubernetes and Openshift like SpaceInvaders but alien ships are pods
|
|
iconClass: fa fa-cogs
|
|
tags: "spaceinvaders"
|
|
parameters:
|
|
- description: Redis Service
|
|
name: REDIS_HOST
|
|
- description: IP addresses that can contact Kubernetes
|
|
name: IP_WHITELIST
|
|
- description: URL of KubeInvaders
|
|
name: ROUTE_HOST
|
|
value: kubeinvaders.local
|
|
- description: The location of the kubeinvaders image
|
|
name: IMAGE_KUBEINVADERS
|
|
value: docker.io/luckysideburn/kubeinvaders:latest
|
|
- description: The namespace to instantiate Kubeinvaders under.
|
|
name: NAMESPACE
|
|
value: kubeinvaders
|
|
- description: A namespaces to stress with KubeInvaders.
|
|
name: TARGET_NAMESPACE
|
|
- description: Secret of the serviceAccount that can kill PODs in specific namespace.
|
|
name: KUBEINVADERS_SECRET
|
|
objects:
|
|
- apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: kubeinvaders
|
|
namespace: ${NAMESPACE}
|
|
- apiVersion: route.openshift.io/v1
|
|
kind: Route
|
|
metadata:
|
|
name: kubeinvaders
|
|
namespace: "${NAMESPACE}"
|
|
annotations:
|
|
haproxy.router.openshift.io/ip_whitelist: ${IP_WHITELIST}
|
|
spec:
|
|
host: "${ROUTE_HOST}"
|
|
to:
|
|
name: kubeinvaders
|
|
tls:
|
|
termination: Edge
|
|
- apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: kubeinvaders
|
|
namespace: "${NAMESPACE}"
|
|
labels:
|
|
name: kubeinvaders
|
|
spec:
|
|
ports:
|
|
- name: kubeinvaders
|
|
port: 8080
|
|
protocol: TCP
|
|
targetPort: 8080
|
|
selector:
|
|
name: kubeinvaders
|
|
- apiVersion: v1
|
|
kind: DeploymentConfig
|
|
metadata:
|
|
name: kubeinvaders
|
|
namespace: "${NAMESPACE}"
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
name: kubeinvaders
|
|
strategy:
|
|
type: Recreate
|
|
template:
|
|
metadata:
|
|
labels:
|
|
name: kubeinvaders
|
|
spec:
|
|
serviceAccountName: kubeinvaders
|
|
containers:
|
|
- env:
|
|
- name: REDIS_HOST
|
|
value: "${REDIS_HOST}"
|
|
- name: ROUTE_HOST
|
|
value: "${ROUTE_HOST}"
|
|
- name: ROUTE_HOST
|
|
value: "${ENDPOINT}"
|
|
- name: NAMESPACE
|
|
value: "${TARGET_NAMESPACE}"
|
|
- name: UPDATETIME
|
|
value: "0.5"
|
|
- name: ALIENPROXIMITY
|
|
value: "15"
|
|
- name: HITSLIMIT
|
|
value: "0"
|
|
- name: TOKEN
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: "${KUBEINVADERS_SECRET}"
|
|
key: token
|
|
name: kubeinvaders
|
|
image: ${IMAGE_KUBEINVADERS}
|
|
imagePullPolicy: Always
|
|
ports:
|
|
- containerPort: 8080
|
|
protocol: TCP
|
|
triggers:
|
|
- type: ConfigChange
|