diff --git a/bescheid-manager/pom.xml b/bescheid-manager/pom.xml index 0a5321b7e39af84a6ce1962a7b6ba6f082be0858..dcaa64916efd42003af4d99f67d968961c13647b 100644 --- a/bescheid-manager/pom.xml +++ b/bescheid-manager/pom.xml @@ -5,17 +5,17 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-parent</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath /> </parent> <groupId>de.ozgcloud.bescheid</groupId> <artifactId>bescheid-manager</artifactId> <name>OZG-Cloud Bescheid Manager</name> - <version>1.2.0-SNAPSHOT</version> + <version>1.3.0-SNAPSHOT</version> <properties> - <pluto.version>1.16.0-SNAPSHOT</pluto.version> + <pluto.version>1.17.0-SNAPSHOT</pluto.version> </properties> <dependencies> diff --git a/mail-service/pom.xml b/mail-service/pom.xml index 6c26f43dcfce23eacdf2ad75cfaff92eef6b896d..7bfa5dcd0109e05bcf44e3f4743a087eda731489 100644 --- a/mail-service/pom.xml +++ b/mail-service/pom.xml @@ -30,13 +30,13 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-parent</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath/> </parent> <groupId>de.itvsh.ozg.mail</groupId> <artifactId>mail-service</artifactId> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <name>KOP Vorgang Manager Mail Service</name> <properties> diff --git a/notification-manager/pom.xml b/notification-manager/pom.xml index 80bee6aac9ce9c1f8066fea5eabcd2d55f4a073f..d390ca65ac42ec0d24f9ece33e78d236459e2eb7 100644 --- a/notification-manager/pom.xml +++ b/notification-manager/pom.xml @@ -29,14 +29,14 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-parent</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath/> </parent> <groupId>de.itvsh.kop.notification</groupId> <artifactId>notification-manager</artifactId> <name>KOP Notification Manager</name> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <properties> <user-manager-interface.version>1.1.0</user-manager-interface.version> diff --git a/pluto-command/pom.xml b/pluto-command/pom.xml index 51ae8e313f2053234dbc50eba17b16b81c0db00b..0297c9f0a806e5e53de42ab95966d9a37339592d 100644 --- a/pluto-command/pom.xml +++ b/pluto-command/pom.xml @@ -4,14 +4,14 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-dependencies</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath/> </parent> <groupId>de.itvsh.ozg.pluto</groupId> <artifactId>pluto-command</artifactId> <name>Command Manager</name> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <properties> <maven-jar-plugin.version>3.3.0</maven-jar-plugin.version> diff --git a/pluto-common/pom.xml b/pluto-common/pom.xml index ff96261aa61c8cbc84d78f26c3e54002ebcbbe0a..0feafde2cbaa163049ab40d41652d0dff1443ed1 100644 --- a/pluto-common/pom.xml +++ b/pluto-common/pom.xml @@ -6,13 +6,13 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-parent</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath /> </parent> <groupId>de.itvsh.ozg.pluto</groupId> <artifactId>pluto-common</artifactId> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <name>OZG-Cloud Vorgang Manager Common</name> diff --git a/pluto-interface/pom.xml b/pluto-interface/pom.xml index 99b066b7baac73f4dfe1db4134094ec6dec2b507..6af420ade8caf5327bfabfa707251b4906856982 100644 --- a/pluto-interface/pom.xml +++ b/pluto-interface/pom.xml @@ -30,13 +30,13 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-dependencies</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath/> </parent> <groupId>de.itvsh.ozg.pluto</groupId> <artifactId>pluto-interface</artifactId> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <name>KOP Vorgang Manager gRPC Interface</name> <description>Interface (gRPC) for Pluto Server</description> diff --git a/pluto-server/pom.xml b/pluto-server/pom.xml index aa4cc012d447974458f41ee8490f98a509f1237b..e74157aa07e768e7a8d65e0dd29a52b123bf129a 100644 --- a/pluto-server/pom.xml +++ b/pluto-server/pom.xml @@ -30,13 +30,13 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-parent</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath/> </parent> <groupId>de.itvsh.ozg.pluto</groupId> <artifactId>pluto-server</artifactId> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <name>KOP Vorgang Manager (Pluto) Server</name> <description>Server Implementierung des VorgangManagers (Pluto)</description> @@ -50,7 +50,7 @@ <kop.license.version>1.3.0</kop.license.version> <kop.zufi.api.version>0.5.0</kop.zufi.api.version> <user-manager-interface.version>1.11.0</user-manager-interface.version> - <bescheid-manager.version>1.2.0-SNAPSHOT</bescheid-manager.version> + <bescheid-manager.version>1.2.0</bescheid-manager.version> <zip.version>2.11.1</zip.version> <jsoup.version>1.15.3</jsoup.version> @@ -260,12 +260,12 @@ <dependency> <groupId>de.ozgcloud.api-lib</groupId> <artifactId>ozg-cloud-spring-boot-starter</artifactId> - <version>0.3.0-SNAPSHOT</version> + <version>0.3.0</version> </dependency> <dependency> <groupId>de.ozgcloud.processor</groupId> <artifactId>processor-manager</artifactId> - <version>0.0.1-SNAPSHOT</version> + <version>0.0.1</version> </dependency> <dependency> diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchConfig.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchConfig.java index 6c89b0e993887c493d2823009f2822e2894b8e35..86e2e659760e22569774f64a43a1ec1b96856ec9 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchConfig.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchConfig.java @@ -23,20 +23,17 @@ */ package de.itvsh.ozg.pluto.common.search; -import java.security.KeyManagementException; -import java.security.NoSuchAlgorithmException; - +import jakarta.validation.Valid; import javax.net.ssl.SSLContext; -import org.apache.http.ssl.SSLContextBuilder; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.ssl.SslBundles; import org.springframework.context.annotation.Configuration; import org.springframework.data.elasticsearch.client.ClientConfiguration; import org.springframework.data.elasticsearch.client.elc.ElasticsearchConfiguration; import org.springframework.data.elasticsearch.support.HttpHeaders; -import jakarta.validation.Valid; import lombok.SneakyThrows; @Configuration @@ -47,6 +44,9 @@ public class SearchConfig extends ElasticsearchConfiguration { @Valid private SearchProperties properties; + @Autowired + private SslBundles sslBundles; + @SneakyThrows @Override public ClientConfiguration clientConfiguration() { @@ -60,8 +60,8 @@ public class SearchConfig extends ElasticsearchConfiguration { .build(); } - SSLContext createSslContext() throws NoSuchAlgorithmException, KeyManagementException { - return SSLContextBuilder.create().build(); + SSLContext createSslContext() { + return sslBundles.getBundle("es-root-ca").createSslContext(); } HttpHeaders buildHeaders() { diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchEventListener.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchEventListener.java index 31c3eee44d989af78298a8fc3d04441ee1485249..0651ca3b18b96e8fd6137ad50609504def959be2 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchEventListener.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchEventListener.java @@ -26,9 +26,8 @@ package de.itvsh.ozg.pluto.common.search; import java.text.MessageFormat; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.event.EventListener; -import org.springframework.data.elasticsearch.client.ClientConfiguration; import org.springframework.stereotype.Component; import de.itvsh.ozg.pluto.command.Command; @@ -41,7 +40,7 @@ import de.itvsh.ozg.pluto.vorgang.VorgangService; import lombok.extern.log4j.Log4j2; @Component -@ConditionalOnBean(ClientConfiguration.class) +@ConditionalOnProperty(prefix = "ozgcloud.elasticsearch", name = "address") @Log4j2 public class SearchEventListener { diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchIndexInitializer.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchIndexInitializer.java index ed1ee3f776f7c62ec64420efe8e2326de21421bd..d596dbb5633006eefe868e165ed65b48f5c4ed24 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchIndexInitializer.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchIndexInitializer.java @@ -25,7 +25,7 @@ package de.itvsh.ozg.pluto.common.search; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationListener; import org.springframework.context.annotation.Profile; @@ -38,7 +38,7 @@ import de.itvsh.ozg.pluto.vorgang.VorgangService; import lombok.extern.log4j.Log4j2; @Component -@ConditionalOnBean(SearchService.class) +@ConditionalOnProperty(prefix = "ozgcloud.elasticsearch", name = "address") @Profile("initSearchIndex") @Async @Log4j2 diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchService.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchService.java index 11c083578def321d5dc07a1e65ef359fef9c8b2f..f9c19f01409893229478c6c0f8deb7a855df0e19 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchService.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchService.java @@ -24,10 +24,9 @@ package de.itvsh.ozg.pluto.common.search; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.dao.DataAccessResourceFailureException; import org.springframework.data.domain.Page; -import org.springframework.data.elasticsearch.client.ClientConfiguration; import org.springframework.stereotype.Service; import de.itvsh.ozg.pluto.common.errorhandling.SearchServiceUnavailableException; @@ -36,7 +35,7 @@ import de.itvsh.ozg.pluto.vorgang.Vorgang; import de.itvsh.ozg.pluto.vorgang.VorgangHeader; @Service -@ConditionalOnBean(ClientConfiguration.class) +@ConditionalOnProperty(prefix = "ozgcloud.elasticsearch", name = "address") public class SearchService { @Autowired diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepository.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepository.java index b2be81c6338a5fa81e9b9ddb5cd89c5e54d8d47c..562dd1204d976bd3c24951a4726a46953e1dd6ac 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepository.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepository.java @@ -23,14 +23,13 @@ */ package de.itvsh.ozg.pluto.common.search; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.data.domain.Page; -import org.springframework.data.elasticsearch.client.ClientConfiguration; import de.itvsh.ozg.pluto.vorgang.FindVorgangRequest; import de.itvsh.ozg.pluto.vorgang.VorgangHeader; -@ConditionalOnBean(ClientConfiguration.class) +@ConditionalOnProperty(prefix = "ozgcloud.elasticsearch", name = "address") interface SearchVorgangCustomRepository { Page<VorgangHeader> searchBy(FindVorgangRequest request); } diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangRepository.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangRepository.java index 7b606c8f864c93891fc628c94670539db5aa44a8..aac8a7b98451f4c68e874615c70eaeb9171864b9 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangRepository.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangRepository.java @@ -23,10 +23,9 @@ */ package de.itvsh.ozg.pluto.common.search; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; -import org.springframework.data.elasticsearch.client.ClientConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.data.elasticsearch.repository.ElasticsearchRepository; -@ConditionalOnBean(ClientConfiguration.class) +@ConditionalOnProperty(prefix = "ozgcloud.elasticsearch", name = "address") interface SearchVorgangRepository extends ElasticsearchRepository<IndexedVorgang, String> { } diff --git a/pluto-server/src/main/resources/application.yml b/pluto-server/src/main/resources/application.yml index 994a2e24fb41376b5ce87ef165ad52eabe6c1bb7..82c568bcd78ca09654dfc877f46413f023efebe6 100644 --- a/pluto-server/src/main/resources/application.yml +++ b/pluto-server/src/main/resources/application.yml @@ -19,7 +19,6 @@ spring: authentication-database: admin freemarker: cache: true - grpc: client: pluto: diff --git a/pluto-utils/pom.xml b/pluto-utils/pom.xml index 14c3d306dd26d11e094237b85b854e1635086acb..3e8885ed5a7353019c8b42fdb416954bc28dd46e 100644 --- a/pluto-utils/pom.xml +++ b/pluto-utils/pom.xml @@ -30,14 +30,14 @@ <parent> <groupId>de.itvsh.kop.common</groupId> <artifactId>kop-common-dependencies</artifactId> - <version>2.3.2-SNAPSHOT</version> + <version>2.3.1</version> <relativePath/> </parent> <groupId>de.itvsh.ozg.pluto</groupId> <artifactId>pluto-utils</artifactId> <name>KOP Vorgang Manager (Pluto) Utils</name> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <properties> <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version> diff --git a/pom.xml b/pom.xml index 30a687a359d07f02a420ecceb373d2869c1495ad..1ac38596f180d612b0a25f14175b125fc22e03f8 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>de.itvsh.ozg</groupId> <artifactId>pluto</artifactId> - <version>1.16.0-SNAPSHOT</version> + <version>1.17.0-SNAPSHOT</version> <name>Pluto Parent</name> <packaging>pom</packaging> diff --git a/src/main/helm/templates/deployment.yaml b/src/main/helm/templates/deployment.yaml index a5485fcf77f71390f604435bb1984eb9d4fbe509..210dad9a0054ff4eb181ff8d38385b6c1241b492 100644 --- a/src/main/helm/templates/deployment.yaml +++ b/src/main/helm/templates/deployment.yaml @@ -129,6 +129,8 @@ spec: name: elasticsearch-credentials key: index optional: false + - name: spring_ssl_bundle_pem_es-root-ca_truststore_certificate + value: "/bindings/ca-certificates/es-root-ca.pem" {{- end }} {{- with (.Values.env).customList }} {{ toYaml . | indent 10 }} diff --git a/src/test/helm/elasticsearch-deployment-test.yaml b/src/test/helm/elasticsearch-deployment-test.yaml index b0d9a8e075b13f9f9636cbe7aa80580dfdd83d0a..1288ef05a06c006230e63c696f8aebd08ba6f18a 100644 --- a/src/test/helm/elasticsearch-deployment-test.yaml +++ b/src/test/helm/elasticsearch-deployment-test.yaml @@ -143,7 +143,11 @@ tests: name: elasticsearch-credentials key: index optional: false - + - contains: + path: spec.template.spec.containers[0].env + content: + name: spring_ssl_bundle_pem_es-root-ca_truststore_certificate + value: /bindings/ca-certificates/es-root-ca.pem - contains: