diff --git a/Jenkinsfile b/Jenkinsfile index 38488fb069084687111bee6abc6ff03207608a2a..3ce8584040360e131cc9c5c1554033bf521ccfc0 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -53,20 +53,21 @@ pipeline { def commonVersion = getParentPomVersion('common/pom.xml') def routerVersion = getParentPomVersion('router/pom.xml') + def forwarderVersion = getParentPomVersion('forwarder/pom.xml') def formCycleAdapterVersion = getParentPomVersion('formcycle-adapter/pom.xml') def enterpriseAdapterVersion = getParentPomVersion('enterprise-adapter/pom.xml') if(env.BRANCH_NAME == 'release'){ - if ( !isReleaseVersion([rootVersion, vorgangManagerVersion, commonVersion, routerVersion, formCycleAdapterVersion, enterpriseAdapterVersion])) { + if ( !isReleaseVersion([rootVersion, vorgangManagerVersion, commonVersion, routerVersion, forwarderVersion, formCycleAdapterVersion, enterpriseAdapterVersion])) { error("Keine Release Version für Branch ${env.BRANCH_NAME}.") } } else { - if ( !isSnapshotVersion([rootVersion, commonVersion, routerVersion, formCycleAdapterVersion, enterpriseAdapterVersion])) { + if ( !isSnapshotVersion([rootVersion, commonVersion, routerVersion, forwarderVersion, formCycleAdapterVersion, enterpriseAdapterVersion])) { error("Keine Snapshot Version für Branch ${env.BRANCH_NAME}.") } } - if ( !isSameVersion([commonVersion, routerVersion, formCycleAdapterVersion, enterpriseAdapterVersion], rootVersion)) { + if ( !isSameVersion([commonVersion, routerVersion, forwarderVersion, formCycleAdapterVersion, enterpriseAdapterVersion], rootVersion)) { error("Versionen sind nicht identisch") } } @@ -141,14 +142,17 @@ pipeline { tagAndPushDockerImage('formcycle-adapter', IMAGE_TAG) tagAndPushDockerImage('enterprise-adapter', IMAGE_TAG) + tagAndPushDockerImage('forwarder', IMAGE_TAG) if (env.BRANCH_NAME == 'main') { tagAndPushDockerImage('formcycle-adapter', 'snapshot-latest') tagAndPushDockerImage('enterprise-adapter', 'snapshot-latest') + tagAndPushDockerImage('forwarder', 'snapshot-latest') } else if (env.BRANCH_NAME == 'release') { tagAndPushDockerImage('formcycle-adapter', 'latest') tagAndPushDockerImage('enterprise-adapter', 'latest') + tagAndPushDockerImage('forwarder', 'latest') } } } @@ -293,6 +297,7 @@ String getElementAccessToken() { Void setNewDevAdapterVersion() { setNewFormcycleAdapterVersion('dev') setNewEnterpriseAdapterVersion('dev') + setNewForwarderVersion('dev') } Void setNewTestAdapterVersion() { @@ -324,6 +329,18 @@ Void setNewEnterpriseAdapterVersion(String environment) { } } +Void setNewForwarderVersion(String environment) { + dir("gitops") { + def envFile = "${environment}/application/values/forwarder-values.yaml" + def envVersions = readYaml file: envFile + + envVersions.forwarder.image.tag = IMAGE_TAG + envVersions.forwarder.helm.version = HELM_CHART_VERSION + + writeYaml file: envFile, data: envVersions, overwrite: true + } +} + Void pushNewDevVersion() { pushNewGitopsVersion('dev') } diff --git a/eingang-manager-interface/pom.xml b/eingang-manager-interface/pom.xml index b877903e6c7055ba30c1a7009f970a992694fe60..81ee185254d63dddc49e251ef715a997ce07ecf2 100644 --- a/eingang-manager-interface/pom.xml +++ b/eingang-manager-interface/pom.xml @@ -45,7 +45,7 @@ <inceptionYear>2025</inceptionYear> <properties> - <vorgang-manager.version>2.23.0</vorgang-manager.version> + <vorgang-manager.version>2.24.0-SNAPSHOT</vorgang-manager.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> diff --git a/formcycle-adapter/formcycle-adapter-interface/pom.xml b/formcycle-adapter/formcycle-adapter-interface/pom.xml index ce3c539bb319c41117cc38c66339c848bd6b0c0a..9e72b2c3698aca2dfda7edc46bd1d178500ddc49 100644 --- a/formcycle-adapter/formcycle-adapter-interface/pom.xml +++ b/formcycle-adapter/formcycle-adapter-interface/pom.xml @@ -41,7 +41,7 @@ <version>2.19.0-SNAPSHOT</version> <properties> - <vorgang-manager.version>2.0.0</vorgang-manager.version> + <vorgang-manager.version>2.24.0-SNAPSHOT</vorgang-manager.version> <java.version>21</java.version> <maven.compiler.source>${java.version}</maven.compiler.source> <maven.compiler.target>${java.version}</maven.compiler.target> @@ -102,4 +102,4 @@ </plugin> </plugins> </build> -</project> +</project> \ No newline at end of file diff --git a/formcycle-adapter/pom.xml b/formcycle-adapter/pom.xml index 04849487dd004df43e50d441f61f2ef539c63b52..19cc12fb20a550332c39b186361e6359e5b73304 100644 --- a/formcycle-adapter/pom.xml +++ b/formcycle-adapter/pom.xml @@ -49,6 +49,7 @@ </properties> <dependencies> + <!-- OZG-Cloud --> <dependency> <groupId>de.ozgcloud.vorgang</groupId> <artifactId>vorgang-manager-utils</artifactId> @@ -63,10 +64,6 @@ <groupId>de.ozgcloud.vorgang</groupId> <artifactId>vorgang-manager-interface</artifactId> </dependency> - <dependency> - <groupId>de.ozgcloud.eingang</groupId> - <artifactId>forwarder</artifactId> - </dependency> <dependency> <groupId>de.ozgcloud.vorgang</groupId> <artifactId>vorgang-manager-interface</artifactId> diff --git a/forwarder/pom.xml b/forwarder/pom.xml index 4fabecd6af1c23ce9d991e6c1db97a49c706da87..abb7d8eaf707840a6ec8b102ccbf521e7effaafc 100644 --- a/forwarder/pom.xml +++ b/forwarder/pom.xml @@ -59,6 +59,10 @@ </dependency> <!-- spring --> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-actuator</artifactId> + </dependency> <dependency> <groupId>net.devh</groupId> <artifactId>grpc-server-spring-boot-starter</artifactId> @@ -124,4 +128,27 @@ </plugin> </plugins> </build> + + <profiles> + <profile> + <id>ci-build</id> + <build> + <plugins> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + <executions> + <execution> + <id>build-image</id> + <phase>install</phase> + <goals> + <goal>build-image-no-fork</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> </project> \ No newline at end of file diff --git a/forwarder/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/forwarder/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000000000000000000000000000000000000..0085992ee7898da7618d6aa0facb2e775c3d5e41 --- /dev/null +++ b/forwarder/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1,17 @@ +net.devh.boot.grpc.client.autoconfigure.GrpcClientAutoConfiguration +net.devh.boot.grpc.client.autoconfigure.GrpcClientMetricAutoConfiguration +net.devh.boot.grpc.client.autoconfigure.GrpcClientHealthAutoConfiguration +net.devh.boot.grpc.client.autoconfigure.GrpcClientSecurityAutoConfiguration +net.devh.boot.grpc.client.autoconfigure.GrpcDiscoveryClientAutoConfiguration +net.devh.boot.grpc.common.autoconfigure.GrpcCommonCodecAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcAdviceAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcHealthServiceAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcMetadataConsulConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcMetadataEurekaConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcMetadataNacosConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcMetadataZookeeperConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcReflectionServiceAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcServerAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcServerFactoryAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcServerMetricAutoConfiguration +net.devh.boot.grpc.server.autoconfigure.GrpcServerSecurityAutoConfiguration \ No newline at end of file diff --git a/forwarder/src/main/resources/application-local.yml b/forwarder/src/main/resources/application-local.yml new file mode 100644 index 0000000000000000000000000000000000000000..1a493ac915649ada101d24a2374ca06690101907 --- /dev/null +++ b/forwarder/src/main/resources/application-local.yml @@ -0,0 +1,21 @@ +logging: + config: classpath:log4j2-local.xml + +server: + port: 9293 + error: + include-stacktrace: always + +management: + server.port: 8084 + +ozgcloud: + adapter: + targetVorgangManagerName: local + fallbackStrategy: DENY + +grpc: + client: + vorgang-manager-local: + address: static://127.0.0.1:9090 + negotiationType: PLAINTEXT diff --git a/forwarder/src/main/resources/application.yml b/forwarder/src/main/resources/application.yml new file mode 100644 index 0000000000000000000000000000000000000000..3a1d31c3031982893ceca985e8d104d9982a97dc --- /dev/null +++ b/forwarder/src/main/resources/application.yml @@ -0,0 +1,31 @@ +logging: + level: + ROOT: WARN + '[de.ozgcloud]': INFO + +management: + server: + port: 8081 + health: + livenessState: + enabled: true + readinessState: + enabled: true + endpoint: + health: + group: + exploratory: + include: livenessState,readinessState,ping + show-details: always + probes: + enabled: true + prometheus: + enabled: true + endpoints: + web: + exposure: + include: health,prometheus + +ozgcloud: + adapter: + routingStrategy: SINGLE \ No newline at end of file diff --git a/forwarder/src/main/resources/banner.txt b/forwarder/src/main/resources/banner.txt new file mode 100644 index 0000000000000000000000000000000000000000..2c1200feb6772777b89760104e6096e10923c7b3 --- /dev/null +++ b/forwarder/src/main/resources/banner.txt @@ -0,0 +1,6 @@ + ______ __ + / ____/___ ______ ______ __________/ /__ _____ + / /_ / __ \/ ___/ | /| / / __ `/ ___/ __ / _ \/ ___/ + / __/ / /_/ / / | |/ |/ / /_/ / / / /_/ / __/ / +/_/ \____/_/ |__/|__/\__,_/_/ \__,_/\___/_/ +${spring-boot.version} ${application.version} diff --git a/pom.xml b/pom.xml index 4d92bb83ed28b5166aaaa4757bcd44bd8d5baa46..ef5a79c3a10a42309e67033ae3029cfbd5d4dd8a 100644 --- a/pom.xml +++ b/pom.xml @@ -55,7 +55,7 @@ </modules> <properties> - <vorgang-manager.version>2.24.0-OZG-7573-forwarding-interface-SNAPSHOT</vorgang-manager.version> + <vorgang-manager.version>2.24.0-SNAPSHOT</vorgang-manager.version> <zufi-manager.version>1.7.0</zufi-manager.version> <jsoup.version>1.14.3</jsoup.version> diff --git a/src/main/helm/templates/_helpers.tpl b/src/main/helm/templates/_helpers.tpl index b0f54ef2dc8d07527213fa45e865202300588dee..de5fd15f584ea749c0eabbfd7f90352a988bb8b9 100644 --- a/src/main/helm/templates/_helpers.tpl +++ b/src/main/helm/templates/_helpers.tpl @@ -105,6 +105,8 @@ app.kubernetes.io/namespace: {{ include "app.namespace" . }} {{- printf "formcycle-adapter-service-account" }} {{- else if eq (.Values.image).name "enterprise-adapter" }} {{- printf "enterprise-adapter-service-account" }} +{{- else if eq (.Values.image).name "forwarder" }} +{{- printf "forwarder-service-account" }} {{- end }} {{- end -}} diff --git a/src/test/helm/service_account_test.yaml b/src/test/helm/service_account_test.yaml index e25b18bcfb31dc8be2872ac4d1c50d77d228013f..3c145c3faa86c99fe37915fd7193d6ba4fa5f1b0 100644 --- a/src/test/helm/service_account_test.yaml +++ b/src/test/helm/service_account_test.yaml @@ -57,6 +57,20 @@ tests: - equal: path: metadata.namespace value: sh-helm-test + - it: should create default forwarder service account name + set: + image.name: forwarder + serviceAccount: + create: true + asserts: + - isKind: + of: ServiceAccount + - equal: + path: metadata.name + value: forwarder-service-account + - equal: + path: metadata.namespace + value: sh-helm-test - it: should create service account with name set: serviceAccount: