59 lines
1.6 KiB
YAML
59 lines
1.6 KiB
YAML
version: 0.1
|
|
component: command
|
|
timeoutInSeconds: 900
|
|
shell: bash
|
|
failImmediatelyOnError: true
|
|
|
|
env:
|
|
variables:
|
|
APP_NAMESPACE: kagent-demo
|
|
PAYMENT_DEPLOYMENT: payment-service
|
|
PAYMENT_CONTAINER: payment-service
|
|
BROKEN_IMAGE_PULL_SECRET: missing-ocir-secret
|
|
|
|
steps:
|
|
- type: Command
|
|
name: Apply business degradation ConfigMap
|
|
command: |
|
|
kubectl apply -f k8s/broken/revenue-risk-configmap.yaml
|
|
kubectl rollout restart deployment/order-service -n "${APP_NAMESPACE}"
|
|
|
|
- type: Command
|
|
name: Apply limited HPA
|
|
command: |
|
|
kubectl apply -f k8s/broken/order-hpa-limited.yaml
|
|
kubectl get hpa order-service -n "${APP_NAMESPACE}" -o wide
|
|
|
|
- type: Command
|
|
name: Break payment image pull secret
|
|
command: |
|
|
kubectl patch deployment "${PAYMENT_DEPLOYMENT}" -n "${APP_NAMESPACE}" \
|
|
--type merge \
|
|
-p "{
|
|
\"spec\": {
|
|
\"template\": {
|
|
\"spec\": {
|
|
\"imagePullSecrets\": [
|
|
{\"name\": \"${BROKEN_IMAGE_PULL_SECRET}\"}
|
|
],
|
|
\"containers\": [
|
|
{
|
|
\"name\": \"${PAYMENT_CONTAINER}\",
|
|
\"imagePullPolicy\": \"Always\"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}"
|
|
|
|
kubectl rollout restart deployment/"${PAYMENT_DEPLOYMENT}" -n "${APP_NAMESPACE}"
|
|
|
|
- type: Command
|
|
name: Show simulated failures
|
|
command: |
|
|
sleep 45
|
|
kubectl get pods -n "${APP_NAMESPACE}" -o wide
|
|
kubectl get hpa -n "${APP_NAMESPACE}" -o wide
|
|
kubectl get events -n "${APP_NAMESPACE}" --sort-by=.lastTimestamp | tail -60
|