diff --git a/onboarding-carts/shipyard-argo.yaml b/onboarding-carts/shipyard-argo.yaml index 3c0d325..a2770e3 100755 --- a/onboarding-carts/shipyard-argo.yaml +++ b/onboarding-carts/shipyard-argo.yaml @@ -1,4 +1,4 @@ -apiVersion: "spec.keptn.sh/0.2.0" +apiVersion: "spec.keptn.sh/0.2.2" kind: "Shipyard" metadata: name: "shipyard-sockshop" diff --git a/onboarding-carts/shipyard-quality-gates.yaml b/onboarding-carts/shipyard-quality-gates.yaml index c5948ee..67805b1 100644 --- a/onboarding-carts/shipyard-quality-gates.yaml +++ b/onboarding-carts/shipyard-quality-gates.yaml @@ -1,4 +1,4 @@ -apiVersion: "spec.keptn.sh/0.2.0" +apiVersion: "spec.keptn.sh/0.2.2" kind: "Shipyard" metadata: name: "shipyard-quality-gates" diff --git a/onboarding-carts/shipyard.yaml b/onboarding-carts/shipyard.yaml index 57e8ba6..a455d32 100644 --- a/onboarding-carts/shipyard.yaml +++ b/onboarding-carts/shipyard.yaml @@ -1,4 +1,4 @@ -apiVersion: "spec.keptn.sh/0.2.0" +apiVersion: "spec.keptn.sh/0.2.2" kind: "Shipyard" metadata: name: "shipyard-sockshop" @@ -80,3 +80,17 @@ spec: properties: deploymentstrategy: "direct" - name: "release" + + - name: "remediation" + triggeredOn: + - event: "production.remediation.finished" + selector: + match: + evaluation.result: "fail" + tasks: + - name: "get-action" + - name: "action" + - name: "evaluation" + triggeredAfter: "10m" + properties: + timeframe: "10m" diff --git a/onboarding-carts/slo-self-healing-dynatrace.yaml b/onboarding-carts/slo-self-healing-dynatrace.yaml new file mode 100644 index 0000000..9101c6e --- /dev/null +++ b/onboarding-carts/slo-self-healing-dynatrace.yaml @@ -0,0 +1,30 @@ +--- +spec_version: "1.0" +comparison: + aggregate_function: "avg" + compare_with: "single_result" + include_result_with_score: "pass" + number_of_comparison_results: 1 +filter: +objectives: + - sli: "response_time_p90" + displayName: "Response time P90" + key_sli: false + pass: # pass if (relative change <= 10% AND absolute value is < 1000) + - criteria: + - "<=+10%" # relative values require a prefixed sign (plus or minus) + - "<1000" # absolute values only require a logical operator + warning: # if the response time is below 1200ms, the result should be a warning + - criteria: + - "<=1200" + weight: 1 + - sli: "problem_open" + displayName: "Problem open" + key_sli: true + pass: + - criteria: + - "=0" + weight: 1 +total_score: + pass: "90%" + warning: "40%" diff --git a/onboarding-carts/slo-self-healing.yaml b/onboarding-carts/slo-self-healing-prometheus.yaml similarity index 100% rename from onboarding-carts/slo-self-healing.yaml rename to onboarding-carts/slo-self-healing-prometheus.yaml