[ENTESB-14357] Provide tests for basic Operator Alerts
diff --git a/e2e/yaks/openshift/monitoring/alerting.feature b/e2e/yaks/openshift/monitoring/alerting.feature
new file mode 100644
index 0000000..7b66a7f
--- /dev/null
+++ b/e2e/yaks/openshift/monitoring/alerting.feature
@@ -0,0 +1,16 @@
+Feature: Alerts from Camel-K are propagated to Openshift Prometheus
+
+ Background: Prepare Thanos-ruler URL
+ Given URL: https://thanos-ruler.openshift-user-workload-monitoring:9091
+
+ Scenario: Integration gets the message from the timer
+ Given Camel-K integration metrics is running
+ Then Camel-K integration metrics should print Successfully processed
+ Then sleep 120000 ms
+
+ Scenario: Thanos-ruler is able to serve alerts based on metrics from Operator
+ Given HTTP request header Authorization is "Bearer ${openshift.token}"
+ When send GET /api/v1/rules
+ Then verify HTTP response expressions
+ | $..rules[?(@.labels.namespace == '${YAKS_NAMESPACE}' && @.state == 'pending')].name | CamelKBuildFailure |
+ And receive HTTP 200
\ No newline at end of file
diff --git a/e2e/yaks/openshift/monitoring/obtainToken.sh b/e2e/yaks/openshift/monitoring/obtainToken.sh
index c3616d3..a4bbe83 100755
--- a/e2e/yaks/openshift/monitoring/obtainToken.sh
+++ b/e2e/yaks/openshift/monitoring/obtainToken.sh
@@ -17,6 +17,8 @@
TOKEN=`oc config view --minify --output 'jsonpath={..token}'`
echo "openshift.token=${TOKEN}" > openshift-token.properties
-oc -n ${YAKS_NAMESPACE} create secret generic openshift-token-secret --from-file=openshift-token.properties
-oc -n ${YAKS_NAMESPACE} label secret openshift-token-secret yaks.citrusframework.org/test=metrics
+oc -n ${YAKS_NAMESPACE} create secret generic openshift-token-secret-metrics --from-file=openshift-token.properties
+oc -n ${YAKS_NAMESPACE} create secret generic openshift-token-secret-alerting --from-file=openshift-token.properties
+oc -n ${YAKS_NAMESPACE} label secret openshift-token-secret-metrics yaks.citrusframework.org/test=metrics
+oc -n ${YAKS_NAMESPACE} label secret openshift-token-secret-alerting yaks.citrusframework.org/test=alerting
rm openshift-token.properties
\ No newline at end of file
diff --git a/e2e/yaks/openshift/monitoring/yaks-config.yaml b/e2e/yaks/openshift/monitoring/yaks-config.yaml
index ed57176..242ae05 100644
--- a/e2e/yaks/openshift/monitoring/yaks-config.yaml
+++ b/e2e/yaks/openshift/monitoring/yaks-config.yaml
@@ -28,4 +28,6 @@
script: ./dependencyInstall.sh
- name: Integration run
run: |
- kamel run --name metrics Metrics.java -w -n $YAKS_NAMESPACE --dependency mvn:com.github.openshift-integration:camel-k-example-metrics:1.0.0-SNAPSHOT
+ set +e
+ kamel run --name metrics Metrics.java -w -n $YAKS_NAMESPACE --dependency mvn:com.github.openshift-integration:camel-k-example-metrics-non-existing:1.0.0-SNAPSHOT
+ kamel run --name metrics Metrics.java -w -n $YAKS_NAMESPACE --dependency mvn:com.github.openshift-integration:camel-k-example-metrics:1.0.0-SNAPSHOT
\ No newline at end of file