From 112dbb24d715eeaec76f22fdf0609fe64234922f Mon Sep 17 00:00:00 2001 From: Vincent MARTOWICZ Date: Mon, 7 Feb 2022 18:53:43 +0100 Subject: [PATCH] Update sleuth/zipkin dependencies (#17615) --- generators/generator-base-docker.js | 1 + generators/generator-constants.js | 2 + .../__snapshots__/generator.spec.mjs.snap | 1 + generators/server/files.js | 1 + generators/server/index.js | 1 + generators/server/templates/pom.xml.ejs | 6 ++- .../templates/src/main/docker/zipkin.yml.ejs | 25 ++++++++++++ .../resources/config/application-dev.yml.ejs | 5 +++ .../resources/config/application-prod.yml.ejs | 5 +++ test-integration/scripts/20-docker-compose.sh | 3 ++ .../app-client-custom-path.spec.js.snap | 3 ++ test/__snapshots__/app.spec.js.snap | 39 +++++++++++++++++++ test/__snapshots__/server.spec.js.snap | 3 ++ .../__snapshots__/app-blueprint.spec.js.snap | 6 +++ .../scoped-blueprint.spec.js.snap | 3 ++ 15 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 generators/server/templates/src/main/docker/zipkin.yml.ejs diff --git a/generators/generator-base-docker.js b/generators/generator-base-docker.js index dcdc05ae64e1..f13b1f5643bc 100644 --- a/generators/generator-base-docker.js +++ b/generators/generator-base-docker.js @@ -85,6 +85,7 @@ module.exports = class extends BlueprintBaseGenerator { this.DOCKER_ELASTICSEARCH = constants.DOCKER_ELASTICSEARCH; this.DOCKER_PROMETHEUS_OPERATOR = constants.DOCKER_PROMETHEUS_OPERATOR; this.DOCKER_GRAFANA_WATCHER = constants.DOCKER_GRAFANA_WATCHER; + this.DOCKER_ZIPKIN = constants.DOCKER_ZIPKIN; this.DOCKER_CASSANDRA = constants.DOCKER_CASSANDRA; this.DOCKER_GRAFANA = constants.DOCKER_GRAFANA; diff --git a/generators/generator-constants.js b/generators/generator-constants.js index 2c542c67d491..0ac2af1770bb 100644 --- a/generators/generator-constants.js +++ b/generators/generator-constants.js @@ -77,6 +77,7 @@ const DOCKER_JENKINS = 'jenkins/jenkins:lts-jdk11'; const DOCKER_SWAGGER_EDITOR = 'swaggerapi/swagger-editor:latest'; const DOCKER_PROMETHEUS_OPERATOR = 'quay.io/coreos/prometheus-operator:v0.42.1'; const DOCKER_GRAFANA_WATCHER = 'quay.io/coreos/grafana-watcher:v0.0.8'; +const DOCKER_ZIPKIN = 'openzipkin/zipkin:2.23'; // Kubernetes versions const KUBERNETES_CORE_API_VERSION = 'v1'; @@ -418,6 +419,7 @@ const constants = { KUBERNETES_INGRESS_API_VERSION, KUBERNETES_ISTIO_NETWORKING_API_VERSION, KUBERNETES_RBAC_API_VERSION, + DOCKER_ZIPKIN, HELM_KAFKA, HELM_ELASTICSEARCH, diff --git a/generators/server/__snapshots__/generator.spec.mjs.snap b/generators/server/__snapshots__/generator.spec.mjs.snap index 1c2e33804238..53edaacb4e11 100644 --- a/generators/server/__snapshots__/generator.spec.mjs.snap +++ b/generators/server/__snapshots__/generator.spec.mjs.snap @@ -14,6 +14,7 @@ Object { "grafana/provisioning/dashboards/dashboard.yml", "grafana/provisioning/dashboards/JVM.json", "grafana/provisioning/datasources/datasource.yml", + "zipkin.yml", ], }, Object { diff --git a/generators/server/files.js b/generators/server/files.js index d9111b415afc..4eee14a1de34 100644 --- a/generators/server/files.js +++ b/generators/server/files.js @@ -257,6 +257,7 @@ const baseServerFiles = { 'grafana/provisioning/dashboards/dashboard.yml', 'grafana/provisioning/dashboards/JVM.json', 'grafana/provisioning/datasources/datasource.yml', + 'zipkin.yml', ], }, { diff --git a/generators/server/index.js b/generators/server/index.js index 899404be6ec1..10782c5f0a93 100644 --- a/generators/server/index.js +++ b/generators/server/index.js @@ -187,6 +187,7 @@ module.exports = class JHipsterServerGenerator extends BaseBlueprintGenerator { this.DOCKER_PROMETHEUS = constants.DOCKER_PROMETHEUS; this.DOCKER_GRAFANA = constants.DOCKER_GRAFANA; this.DOCKER_COMPOSE_FORMAT_VERSION = constants.DOCKER_COMPOSE_FORMAT_VERSION; + this.DOCKER_ZIPKIN = constants.DOCKER_ZIPKIN; this.JAVA_VERSION = constants.JAVA_VERSION; this.JAVA_COMPATIBLE_VERSIONS = constants.JAVA_COMPATIBLE_VERSIONS; diff --git a/generators/server/templates/pom.xml.ejs b/generators/server/templates/pom.xml.ejs index 50407f344c81..dec0258787e5 100644 --- a/generators/server/templates/pom.xml.ejs +++ b/generators/server/templates/pom.xml.ejs @@ -2056,7 +2056,11 @@ org.springframework.cloud - spring-cloud-starter-zipkin + spring-cloud-starter-sleuth + + + org.springframework.cloud + spring-cloud-sleuth-zipkin diff --git a/generators/server/templates/src/main/docker/zipkin.yml.ejs b/generators/server/templates/src/main/docker/zipkin.yml.ejs new file mode 100644 index 000000000000..f6bba747431c --- /dev/null +++ b/generators/server/templates/src/main/docker/zipkin.yml.ejs @@ -0,0 +1,25 @@ +<%# + Copyright 2013-2022 the original author or authors from the JHipster project. + + This file is part of the JHipster project, see https://www.jhipster.tech/ + for more information. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +-%> +# This configuration is intended for development purpose, it's **your** responsibility to harden it for production +version: '<%= DOCKER_COMPOSE_FORMAT_VERSION %>' +services: + zipkin: + image: <%= DOCKER_ZIPKIN %> + ports: + - 127.0.0.1:9411:9411 diff --git a/generators/server/templates/src/main/resources/config/application-dev.yml.ejs b/generators/server/templates/src/main/resources/config/application-dev.yml.ejs index ecce8c4509e3..d74500920522 100644 --- a/generators/server/templates/src/main/resources/config/application-dev.yml.ejs +++ b/generators/server/templates/src/main/resources/config/application-dev.yml.ejs @@ -255,6 +255,11 @@ spring: cache: false <%_ if (serviceDiscoveryType || applicationTypeGateway || applicationTypeMicroservice) { _%> sleuth: + # https://github.com/spring-projects/spring-framework/issues/27844#issuescomment-1002866885 + # https://github.com/spring-cloud/spring-cloud-sleuth/issues/2094 + async: + enabled: false + enabled: false sampler: probability: 1 # report 100% of traces zipkin: # Use the "zipkin" Maven profile to have the Spring Cloud Zipkin dependencies diff --git a/generators/server/templates/src/main/resources/config/application-prod.yml.ejs b/generators/server/templates/src/main/resources/config/application-prod.yml.ejs index 1e03bc5bc4a0..ec692d732706 100644 --- a/generators/server/templates/src/main/resources/config/application-prod.yml.ejs +++ b/generators/server/templates/src/main/resources/config/application-prod.yml.ejs @@ -209,6 +209,11 @@ spring: cache: true <%_ if (serviceDiscoveryType || applicationTypeGateway || applicationTypeMicroservice) { _%> sleuth: + # https://github.com/spring-projects/spring-framework/issues/27844#issuescomment-1002866885 + # https://github.com/spring-cloud/spring-cloud-sleuth/issues/2094 + async: + enabled: false + enabled: false sampler: probability: 1 # report 100% of traces zipkin: # Use the "zipkin" Maven profile to have the Spring Cloud Zipkin dependencies diff --git a/test-integration/scripts/20-docker-compose.sh b/test-integration/scripts/20-docker-compose.sh index 86a2868191d2..b7629459e273 100755 --- a/test-integration/scripts/20-docker-compose.sh +++ b/test-integration/scripts/20-docker-compose.sh @@ -57,4 +57,7 @@ fi if [ "$JHI_SONAR" = 1 ]; then docker-compose -f src/main/docker/sonar.yml up -d fi +if [ -a src/main/docker/zipkin.yml ]; then + docker-compose -f src/main/docker/zipkin.yml up -d +fi docker ps -a diff --git a/test/__snapshots__/app-client-custom-path.spec.js.snap b/test/__snapshots__/app-client-custom-path.spec.js.snap index bc0a86f18443..ff791e2b104b 100644 --- a/test/__snapshots__/app-client-custom-path.spec.js.snap +++ b/test/__snapshots__/app-client-custom-path.spec.js.snap @@ -110,6 +110,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, diff --git a/test/__snapshots__/app.spec.js.snap b/test/__snapshots__/app.spec.js.snap index 63695aac72f5..7a3a31d15e77 100644 --- a/test/__snapshots__/app.spec.js.snap +++ b/test/__snapshots__/app.spec.js.snap @@ -113,6 +113,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -553,6 +556,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -1946,6 +1952,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -3307,6 +3316,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -4635,6 +4647,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -5972,6 +5987,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -7321,6 +7339,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -8691,6 +8712,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -10034,6 +10058,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -10990,6 +11017,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -12339,6 +12369,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -13655,6 +13688,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -14968,6 +15004,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, diff --git a/test/__snapshots__/server.spec.js.snap b/test/__snapshots__/server.spec.js.snap index fb2f62dea5cd..acf6fd7edb6c 100644 --- a/test/__snapshots__/server.spec.js.snap +++ b/test/__snapshots__/server.spec.js.snap @@ -92,6 +92,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, diff --git a/test/blueprint/__snapshots__/app-blueprint.spec.js.snap b/test/blueprint/__snapshots__/app-blueprint.spec.js.snap index 4387b0160d53..13c3f79327ea 100644 --- a/test/blueprint/__snapshots__/app-blueprint.spec.js.snap +++ b/test/blueprint/__snapshots__/app-blueprint.spec.js.snap @@ -110,6 +110,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, @@ -1459,6 +1462,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", }, diff --git a/test/blueprint/__snapshots__/scoped-blueprint.spec.js.snap b/test/blueprint/__snapshots__/scoped-blueprint.spec.js.snap index c881de67386e..efe564ad4764 100644 --- a/test/blueprint/__snapshots__/scoped-blueprint.spec.js.snap +++ b/test/blueprint/__snapshots__/scoped-blueprint.spec.js.snap @@ -110,6 +110,9 @@ Object { "src/main/docker/sonar.yml": Object { "stateCleared": "modified", }, + "src/main/docker/zipkin.yml": Object { + "stateCleared": "modified", + }, "src/main/java/com/mycompany/myapp/ApplicationWebXml.java": Object { "stateCleared": "modified", },