--- 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: IP addresses that can contact Kubernetes name: IP_WHITELIST - description: URL of KubeInvaders name: ROUTE_HOST value: kubeinvaders.local - name: ENDPOINT value: kubeinvaders.local - description: The location of the kubeinvaders image name: IMAGE_KUBEINVADERS value: docker.io/luckysideburn/kubeinvaders:v1.2 - description: The namespace to instantiate Kubeinvaders under. name: NAMESPACE value: kubeinvaders - description: A namespaces to stress with KubeInvaders. name: TARGET_NAMESPACE objects: - 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: ROUTE_HOST value: "${ROUTE_HOST}" - name: ENDPOINT value: "${ROUTE_HOST}" - name: NAMESPACE value: "${TARGET_NAMESPACE}" - name: UPDATETIME value: "0.5" - name: ALIENPROXIMITY value: "15" - name: HITSLIMIT value: "0" name: kubeinvaders image: ${IMAGE_KUBEINVADERS} imagePullPolicy: Always ports: - containerPort: 8080 protocol: TCP triggers: - type: ConfigChange