Skip to content
Snippets Groups Projects
Commit ef714b31 authored by OZGCloud's avatar OZGCloud
Browse files

Merge pull request 'OZG-6654 add service monitor' (#49) from OZG-6654 into master

parents 118abc91 4acf0d97
Branches
Tags
No related merge requests found
......@@ -14,6 +14,13 @@ spec:
ingress:
- ports:
- port: 8080
- from:
- namespaceSelector:
matchLabels:
name: {{ (.Values.networkPolicy).monitoringNamespace | default "openshift-user-workload-monitoring" }}
ports:
- protocol: TCP
port: 8081
{{- with (.Values.networkPolicy).additionalIngressConfigLocal }}
{{ toYaml . | indent 2 }}
{{- end }}
......
#
# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den
# Ministerpräsidenten des Landes Schleswig-Holstein
# Staatskanzlei
# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
#
# Lizenziert unter der EUPL, Version 1.2 oder - sobald
# diese von der Europäischen Kommission genehmigt wurden -
# Folgeversionen der EUPL ("Lizenz");
# Sie dürfen dieses Werk ausschließlich gemäß
# dieser Lizenz nutzen.
# Eine Kopie der Lizenz finden Sie hier:
#
# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
#
# Sofern nicht durch anwendbare Rechtsvorschriften
# gefordert oder in schriftlicher Form vereinbart, wird
# die unter der Lizenz verbreitete Software "so wie sie
# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
# ausdrücklich oder stillschweigend - verbreitet.
# Die sprachspezifischen Genehmigungen und Beschränkungen
# unter der Lizenz sind dem Lizenztext zu entnehmen.
#
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ .Release.Name }}
namespace: {{ include "app.namespace" . }}
labels:
{{- include "app.defaultLabels" . | indent 4 }}
component: administration-service-monitor
spec:
endpoints:
- port: metrics
path: /actuator/prometheus
namespaceSelector:
matchNames:
- {{ include "app.namespace" . }}
selector:
matchLabels:
{{- include "app.matchLabels" . | indent 6 }}
component: administration-service
\ No newline at end of file
......@@ -75,6 +75,13 @@ tests:
ingress:
- ports:
- port: 8080
- from:
- namespaceSelector:
matchLabels:
name: "openshift-user-workload-monitoring"
ports:
- protocol: TCP
port: 8081
egress:
- to:
- podSelector:
......@@ -119,6 +126,24 @@ tests:
- podSelector:
matchLabels:
component: client2
- it: set ingress monitoring namespace rule
set:
networkPolicy:
ssoPublicIp: 51.89.117.53/32
dnsServerNamespace: test-namespace-dns
monitoringNamespace: monitoring
asserts:
- contains:
path: spec.ingress
content:
from:
- namespaceSelector:
matchLabels:
name: "monitoring"
ports:
- protocol: TCP
port: 8081
- it: add ingress rule by values global
set:
networkPolicy:
......
#
# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den
# Ministerpräsidenten des Landes Schleswig-Holstein
# Staatskanzlei
# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
#
# Lizenziert unter der EUPL, Version 1.2 oder - sobald
# diese von der Europäischen Kommission genehmigt wurden -
# Folgeversionen der EUPL ("Lizenz");
# Sie dürfen dieses Werk ausschließlich gemäß
# dieser Lizenz nutzen.
# Eine Kopie der Lizenz finden Sie hier:
#
# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
#
# Sofern nicht durch anwendbare Rechtsvorschriften
# gefordert oder in schriftlicher Form vereinbart, wird
# die unter der Lizenz verbreitete Software "so wie sie
# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
# ausdrücklich oder stillschweigend - verbreitet.
# Die sprachspezifischen Genehmigungen und Beschränkungen
# unter der Lizenz sind dem Lizenztext zu entnehmen.
#
suite: test service_monitor
release:
name: administration
namespace: sh-helm-test
templates:
- templates/service_monitor.yaml
tests:
- it: should have basic info and the label component with value administration-service-monitor attached
asserts:
- isKind:
of: ServiceMonitor
- isAPIVersion:
of: monitoring.coreos.com/v1
- equal:
path: metadata.name
value: administration
- equal:
path: metadata.namespace
value: sh-helm-test
- equal:
path: metadata.labels["component"]
value: administration-service-monitor
- it: should contain default lables and component lables
asserts:
- equal:
path: metadata.labels
value:
app.kubernetes.io/instance: administration
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: administration
app.kubernetes.io/namespace: sh-helm-test
component: administration-service-monitor
helm.sh/chart: administration-0.0.0-MANAGED-BY-JENKINS
ozgcloud-mongodb-client: "true"
- it: should have the metrics endpoint configured by default
set:
env.springProfiles: oc,stage
asserts:
- contains:
path: spec.endpoints
content:
port: metrics
path: /actuator/prometheus
- it: should be able to enable the endpoint
asserts:
- contains:
path: spec.endpoints
content:
port: metrics
path: /actuator/prometheus
- it: namespace selector should contain the namespace
asserts:
- contains:
path: spec.namespaceSelector.matchNames
content: sh-helm-test
- it: selector should contain helm recommended labels name and namespace
asserts:
- equal:
path: spec.selector.matchLabels
value:
app.kubernetes.io/name: administration
app.kubernetes.io/namespace: sh-helm-test
component: administration-service
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment