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

Merge branch 'OZG-4453-SearchIndexOperator' of...

Merge branch 'OZG-4453-SearchIndexOperator' of git.ozg-sh.de:ozgcloud-devops/operator into OZG-4453-SearchIndexOperator

# Conflicts:
#	ozgcloud-elasticsearch-operator/src/main/resources/application.yml
parents e0f7d51c 947d027d
Branches
Tags
No related merge requests found
Showing
with 546 additions and 0 deletions
#
# Copyright (C) 2023 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: deployment resources test
release:
name: afm-adapter
templates:
- templates/deployment.yaml
tests:
- it: test resources
set:
resources:
limits:
cpu: "11m"
memory: "22Mi"
requests:
cpu: "33m"
memory: "44Mi"
image:
name: hase
tag: latest
imagePullSecret: imagePullSecret
asserts:
- equal:
path: spec.template.spec.containers[0].resources.limits.cpu
value: 11m
- equal:
path: spec.template.spec.containers[0].resources.limits.memory
value: 22Mi
- equal:
path: spec.template.spec.containers[0].resources.requests.cpu
value: 33m
- equal:
path: spec.template.spec.containers[0].resources.requests.memory
value: 44Mi
- it: test empty resources
set:
image:
name: hase
tag: latest
imagePullSecret: imagePullSecret
asserts:
- isEmpty:
path: spec.template.spec.containers[0].resources
#
# Copyright (C) 2023 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: deployment templace spec test
release:
name: elastic-test-operator
namespace: sh-helm-test
templates:
- deployment.yaml
tests:
- it: validate serviceaccount name
set:
image:
name: hase
tag: latest
imagePullSecret: imagePullSecret
asserts:
- equal:
path: spec.template.spec.serviceAccountName
value: ozgcloud-elasticsearch-operator-serviceaccount
- it: validate restartPolicy
set:
image:
name: hase
tag: latest
imagePullSecret: imagePullSecret
asserts:
- equal:
path: spec.template.spec.restartPolicy
value: Always
- it: validate dns config
set:
image:
name: hase
tag: latest
imagePullSecret: imagePullSecret
asserts:
- equal:
path: spec.template.spec.dnsConfig
value: {}
- equal:
path: spec.template.spec.dnsPolicy
value: ClusterFirst
\ No newline at end of file
#
# Copyright (C) 2023 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: deployment type test
release:
name: elastic-test-operator
namespace: sh-helm-test
templates:
- deployment.yaml
tests:
- it: validate template type and api Version
set:
image:
name: hase
tag: latest
imagePullSecret: imagePullSecret
asserts:
- isKind:
of: Deployment
- isAPIVersion:
of: apps/v1
image:
name: test
tag: latest
imagePullSecret: "docker-secret"
\ No newline at end of file
#
# Copyright (C) 2023 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: Elasticsearch admin secret view role test
release:
name: ozgcloud-elasticsearch-operator
namespace: test-namespace
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_admin_secret_view_role.yaml
tests:
- it: should have apiVersion
asserts:
- equal:
path: apiVersion
value: rbac.authorization.k8s.io/v1
- it: should have isKind of
asserts:
- isKind:
of: Role
- it: should have metadata name
asserts:
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-admin-secret-view-role
- it: should have metadata namespace
asserts:
- equal:
path: metadata.namespace
value: elastic-system
- it: should have rules for ozgcloudelasticsearches resource
asserts:
- equal:
path: rules
value:
- apiGroups:
- ""
resourceNames:
- ozg-search-cluster-es-elastic-user
resources:
- secrets
verbs:
- get
\ No newline at end of file
#
# Copyright (C) 2023 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: Elasticsearch admin secret view rolebinding test
release:
name: ozgcloud-elasticsearch-operator
namespace: sh-helm-test
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_admin_secret_view_rolebinding.yaml
tests:
- it: should have apiVersion
asserts:
- equal:
path: apiVersion
value: rbac.authorization.k8s.io/v1
- it: should have isKind of
asserts:
- isKind:
of: RoleBinding
- it: should have metadata name
asserts:
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-admin-secret-view-role-binding
- it: should have subjects
asserts:
- equal:
path: subjects
value:
- kind: ServiceAccount
name: ozgcloud-elasticsearch-operator-serviceaccount
namespace: sh-helm-test
- it: should have roleRef
asserts:
- equal:
path: roleRef
value:
kind: Role
name: ozgcloud-elasticsearch-operator-admin-secret-view-role
apiGroup: rbac.authorization.k8s.io
\ No newline at end of file
suite: elasticsearch_edit_role test
release:
name: release-name
templates:
- templates/rbac/elasticsearch_edit_role.yaml
- templates/rbac/ozgcloud_elasticsearch_operator_edit_role.yaml
tests:
- it: should have apiVersion
asserts:
......@@ -16,64 +18,36 @@ tests:
asserts:
- equal:
path: metadata.name
value: elasticsearch-edit-role
value: ozgcloud-elasticsearch-operator-edit-role
- it: should have metadata labels name
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/name]
value: clusterrole
value: release-name
- it: should have metadata labels instance
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/instance]
value: elasticsearch-edit-role
value: release-name
- it: should have metadata labels component
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/component]
value: rbac
- it: should have metadata labels created-by
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/created-by]
value: ozgcloud-operator
- it: should have metadata labels part-of
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/part-of]
value: ozgcloud-operator
- it: should have metadata labels managed-by
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/managed-by]
value: kustomize
value: ozgcloud-elasticsearch-operator
- it: should have rules for ozgcloudelasticsearches resource
- it: should have rules for ozgcloudelasticsearchs resource
asserts:
- contains:
path: rules
content:
apiGroups:
- api.ozgcloud-stack.de
- operator.ozgcloud.de
resources:
- ozgcloudelasticsearches
- ozgcloudelasticsearchs
- ozgcloudelasticsearchs/status
- ozgcloudelasticsearchs/finalizers
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- it: should have rules for ozgcloudelasticsearches/status resource
asserts:
- contains:
path: rules
content:
apiGroups:
- api.ozgcloud-stack.de
resources:
- ozgcloudelasticsearches/status
verbs:
- get
\ No newline at end of file
\ No newline at end of file
suite: elasticsearch_view_rolebinding test
release:
namespace: sh-helm-test
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_view_rolebinding.yaml
tests:
- it: should have apiVersion
asserts:
- equal:
path: apiVersion
value: rbac.authorization.k8s.io/v1
- it: should have isKind of
asserts:
- isKind:
of: ClusterRoleBinding
- it: should have metadata name
asserts:
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-view-role-binding
- it: should have subjects
asserts:
- equal:
path: subjects
value:
- kind: ServiceAccount
name: ozgcloud-elasticsearch-operator-serviceaccount
namespace: sh-helm-test
- it: should have roleRef
asserts:
- equal:
path: roleRef
value:
kind: ClusterRole
name: ozgcloud-elasticsearch-operator-view-role
apiGroup: rbac.authorization.k8s.io
\ No newline at end of file
#
# Copyright (C) 2023 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: ServiceAccount test
release:
name: ozgcloud-elasticsearch-operator
namespace: test-namespace
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_serviceaccount.yaml
tests:
- it: test metadata
asserts:
- isKind:
of: ServiceAccount
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-serviceaccount
- equal:
path: metadata.namespace
value: test-namespace
\ No newline at end of file
suite: elasticsearch_view_role test
release:
name: release-name
templates:
- templates/rbac/elasticsearch_view_role.yaml
- templates/rbac/ozgcloud_elasticsearch_operator_view_role.yaml
tests:
- it: should have apiVersion
asserts:
......@@ -16,60 +18,35 @@ tests:
asserts:
- equal:
path: metadata.name
value: elasticsearch-view-role
value: ozgcloud-elasticsearch-operator-view-role
- it: should have metadata labels name
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/name]
value: clusterrole
value: release-name
- it: should have metadata labels instance
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/instance]
value: elasticsearch-view-role
value: release-name
- it: should have metadata labels component
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/component]
value: rbac
- it: should have metadata labels created-by
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/created-by]
value: ozgcloud-operator
- it: should have metadata labels part-of
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/part-of]
value: ozgcloud-operator
- it: should have metadata labels managed-by
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/managed-by]
value: kustomize
value: ozgcloud-elasticsearch-operator
- it: should have rules for ozgcloudelasticsearches resource
- it: should have rules for ozgcloudelasticsearchs resource
asserts:
- contains:
path: rules
content:
apiGroups:
- api.ozgcloud-stack.de
- operator.ozgcloud.de
resources:
- ozgcloudelasticsearches
- ozgcloudelasticsearchs
- ozgcloudelasticsearchs/status
- ozgcloudelasticsearchs/finalizers
verbs:
- get
- list
- watch
- it: should have rules for ozgcloudelasticsearches/status resource
asserts:
- contains:
path: rules
content:
apiGroups:
- api.ozgcloud-stack.de
resources:
- ozgcloudelasticsearches/status
verbs:
- get
\ No newline at end of file
suite: elasticsearch_edit_rolebinding test
release:
namespace: sh-helm-test
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_edit_rolebinding.yaml
tests:
- it: should have apiVersion
asserts:
- equal:
path: apiVersion
value: rbac.authorization.k8s.io/v1
- it: should have isKind of
asserts:
- isKind:
of: ClusterRoleBinding
- it: should have metadata name
asserts:
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-edit-role-binding
- it: should have subjects
asserts:
- equal:
path: subjects
value:
- kind: ServiceAccount
name: ozgcloud-elasticsearch-operator-serviceaccount
namespace: sh-helm-test
- it: should have roleRef
asserts:
- equal:
path: roleRef
value:
kind: ClusterRole
name: ozgcloud-elasticsearch-operator-edit-role
apiGroup: rbac.authorization.k8s.io
\ No newline at end of file
......@@ -55,6 +55,10 @@
<groupId>io.javaoperatorsdk</groupId>
<artifactId>operator-framework-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- tools -->
<dependency>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment