generator-jhipster 7.7.0 → 7.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/README.md +1 -2
  2. package/generators/app/index.js +10 -0
  3. package/generators/ci-cd/index.js +1 -1
  4. package/generators/ci-cd/templates/github-actions.yml.ejs +4 -4
  5. package/generators/client/files-common.js +1 -2
  6. package/generators/client/files-react.js +25 -2
  7. package/generators/client/index.js +1 -1
  8. package/generators/client/needle-api/needle-client-react.js +11 -8
  9. package/generators/client/templates/angular/angular.json.ejs +1 -9
  10. package/generators/client/templates/angular/jest.conf.js.ejs +1 -1
  11. package/generators/client/templates/angular/package.json +17 -18
  12. package/generators/client/templates/angular/package.json.ejs +1 -1
  13. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/list/user-management.component.ts.ejs +1 -1
  14. package/generators/client/templates/angular/src/main/webapp/app/core/util/data-util.service.ts.ejs +1 -1
  15. package/generators/client/templates/angular/src/main/webapp/app/core/util/parse-links.service.ts.ejs +1 -1
  16. package/generators/client/templates/angular/webpack/webpack.custom.js.ejs +12 -1
  17. package/generators/client/templates/common/package.json +7 -6
  18. package/generators/client/templates/common/webpack/webpack.microfrontend.js.jhi.ejs +2 -3
  19. package/generators/client/templates/react/.eslintrc.json.ejs +1 -1
  20. package/generators/client/templates/react/jest.conf.js.ejs +1 -1
  21. package/generators/client/templates/react/package.json +30 -31
  22. package/generators/client/templates/react/package.json.ejs +1 -0
  23. package/generators/client/templates/react/src/main/webapp/app/app.scss.ejs +1 -1
  24. package/generators/client/templates/react/src/main/webapp/app/config/store.ts.ejs +53 -6
  25. package/generators/client/templates/react/src/main/webapp/app/config/translation-middleware.ts.ejs +58 -0
  26. package/generators/client/templates/react/src/main/webapp/app/entities/menu.tsx.ejs +45 -0
  27. package/generators/client/templates/react/src/main/webapp/app/entities/reducers.ts.ejs +25 -0
  28. package/generators/client/templates/react/src/main/webapp/app/entities/routes.tsx.ejs +47 -0
  29. package/generators/client/templates/react/src/main/webapp/app/index.tsx.ejs +7 -7
  30. package/generators/client/templates/react/src/main/webapp/app/main.tsx.ejs +19 -0
  31. package/generators/client/templates/react/src/main/webapp/app/modules/administration/logs/logs.tsx.ejs +1 -1
  32. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management.tsx.ejs +2 -1
  33. package/generators/client/templates/react/src/main/webapp/app/modules/login/login-modal.tsx.ejs +5 -1
  34. package/generators/client/templates/react/src/main/webapp/app/routes.tsx.ejs +24 -7
  35. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-loading.tsx.ejs +15 -0
  36. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/entities.tsx.ejs +34 -6
  37. package/generators/client/templates/react/src/main/webapp/app/shared/reducers/index.ts.ejs +9 -2
  38. package/generators/client/templates/react/src/main/webapp/app/shared/reducers/locale.spec.ts.ejs +9 -3
  39. package/generators/client/templates/react/src/main/webapp/app/shared/reducers/locale.ts.ejs +21 -5
  40. package/generators/client/templates/react/src/main/webapp/app/typings.d.ts.ejs +15 -0
  41. package/generators/client/templates/react/src/main/webapp/microfrontends/entities-menu.tsx.ejs +3 -0
  42. package/generators/client/templates/react/src/main/webapp/microfrontends/entities-routes.tsx.ejs +3 -0
  43. package/generators/client/templates/react/tsconfig.json.ejs +3 -3
  44. package/generators/client/templates/react/tsconfig.test.json.ejs +9 -1
  45. package/generators/client/templates/react/webpack/webpack.common.js.ejs +6 -13
  46. package/generators/client/templates/react/webpack/webpack.dev.js.ejs +7 -8
  47. package/generators/client/templates/react/webpack/webpack.microfrontend.js.jhi.react.ejs +99 -0
  48. package/generators/client/templates/react/webpack/webpack.prod.js.ejs +31 -21
  49. package/generators/client/templates/vue/package.json +16 -17
  50. package/generators/client/templates/vue/package.json.ejs +1 -1
  51. package/generators/client/templates/vue/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.ts.ejs +1 -0
  52. package/generators/client/templates/vue/src/main/webapp/app/shared/data/data-utils.service.ts.ejs +1 -1
  53. package/generators/client/templates/vue/src/test/javascript/jest.conf.js.ejs +2 -2
  54. package/generators/client/templates/vue/tsconfig.json.ejs +0 -3
  55. package/generators/client/templates/vue/webpack/webpack.common.js.ejs +6 -2
  56. package/generators/common/templates/package.json +2 -2
  57. package/generators/docker-compose/index.js +9 -5
  58. package/generators/entity/index.js +34 -19
  59. package/generators/entity-client/index.js +8 -0
  60. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.ts.ejs +1 -1
  61. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.ts.ejs +1 -1
  62. package/generators/entity-client/templates/common/src/test/javascript/cypress/integration/entity/entity.spec.ts.ejs +1 -0
  63. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-delete-dialog.tsx.ejs +3 -3
  64. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-detail.tsx.ejs +5 -4
  65. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-update.tsx.ejs +19 -18
  66. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity.reducer.ts.ejs +2 -2
  67. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity.tsx.ejs +21 -20
  68. package/generators/entity-i18n/templates/i18n/entity_fr.json.ejs +1 -1
  69. package/generators/entity-server/files.js +30 -10
  70. package/generators/entity-server/index.js +19 -1
  71. package/generators/entity-server/templates/couchbase/src/main/java/package/domain/Entity.java.jhi.spring_data_couchbase.ejs +1 -1
  72. package/generators/entity-server/templates/couchbase/src/main/java/package/repository/EntityRepository.java.ejs +31 -8
  73. package/generators/entity-server/templates/partials/update_template.ejs +77 -0
  74. package/generators/entity-server/templates/reactive/partials/save_template.ejs +1 -1
  75. package/generators/entity-server/templates/reactive/partials/update_template.ejs +41 -0
  76. package/generators/entity-server/templates/src/main/java/package/common/get_all_template.ejs +5 -5
  77. package/generators/entity-server/templates/src/main/java/package/common/get_template.ejs +1 -1
  78. package/generators/entity-server/templates/src/main/java/package/common/inject_template.ejs +13 -4
  79. package/generators/entity-server/templates/src/main/java/package/common/patch_template.ejs +2 -2
  80. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.ejs +2 -1
  81. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.javax_lifecycle_events.ejs +31 -0
  82. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.spring_data_persistable.ejs +54 -0
  83. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.spring_data_reactive.ejs +1 -1
  84. package/generators/entity-server/templates/src/main/java/package/domain/EntityCallback.java.ejs +43 -0
  85. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository.java.ejs +6 -6
  86. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryInternalImpl_reactive.java.ejs +13 -16
  87. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationshipsImpl.java.ejs +4 -3
  88. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository_reactive.java.ejs +15 -23
  89. package/generators/entity-server/templates/src/main/java/package/repository/EntitySqlHelper_reactive.java.ejs +2 -2
  90. package/generators/entity-server/templates/src/main/java/package/repository/rowmapper/EntityRowMapper.java.ejs +2 -2
  91. package/generators/entity-server/templates/src/main/java/package/repository/search/EntitySearchRepository.java.ejs +12 -25
  92. package/generators/entity-server/templates/src/main/java/package/service/EntityService.java.ejs +10 -2
  93. package/generators/entity-server/templates/src/main/java/package/service/impl/EntityServiceImpl.java.ejs +21 -5
  94. package/generators/entity-server/templates/src/main/java/package/service/mapper/EntityMapper.java.ejs +61 -90
  95. package/generators/entity-server/templates/src/main/java/package/web/rest/EntityResource.java.ejs +6 -4
  96. package/generators/entity-server/templates/src/test/java/package/web/rest/EntityResourceIT.java.ejs +28 -15
  97. package/generators/generator-base-private.js +1 -1
  98. package/generators/generator-base.js +29 -0
  99. package/generators/generator-constants.js +5 -5
  100. package/generators/generator-transforms.js +0 -1
  101. package/generators/gradle/constants.cjs +1 -1
  102. package/generators/maven/files.cjs +0 -1
  103. package/generators/maven/templates/.mvn/wrapper/maven-wrapper.jar +0 -0
  104. package/generators/maven/templates/.mvn/wrapper/maven-wrapper.properties +18 -2
  105. package/generators/maven/templates/mvnw +13 -7
  106. package/generators/maven/templates/mvnw.cmd +19 -13
  107. package/generators/maven/templates/pom.xml.jhi.ejs +1 -1
  108. package/generators/server/cleanup.js +19 -3
  109. package/generators/server/files.js +101 -17
  110. package/generators/server/index.js +11 -5
  111. package/generators/server/needle-api/needle-server-gradle.js +38 -0
  112. package/generators/server/templates/.mvn/jvm.config +1 -0
  113. package/generators/server/templates/.mvn/wrapper/maven-wrapper.jar +0 -0
  114. package/generators/server/templates/.mvn/wrapper/maven-wrapper.properties +18 -2
  115. package/generators/server/templates/build.gradle.ejs +7 -5
  116. package/generators/server/templates/couchbase/src/main/java/package/repository/JHipsterCouchbaseRepository.java.ejs +24 -1
  117. package/generators/server/templates/devcontainer/Dockerfile.ejs +25 -0
  118. package/generators/server/templates/devcontainer/devcontainer.json.ejs +64 -0
  119. package/generators/server/templates/gradle/wrapper/gradle-wrapper.jar +0 -0
  120. package/generators/server/templates/gradle.properties.ejs +4 -4
  121. package/generators/server/templates/mvnw +13 -7
  122. package/generators/server/templates/mvnw.cmd +19 -13
  123. package/generators/server/templates/pom.xml.ejs +19 -17
  124. package/generators/server/templates/settings.gradle.ejs +6 -4
  125. package/generators/server/templates/src/main/docker/app.yml.ejs +2 -6
  126. package/generators/server/templates/src/main/docker/config/realm-config/jhipster-realm.json.ejs +2 -1
  127. package/generators/server/templates/src/main/docker/mysql.yml.ejs +1 -0
  128. package/generators/server/templates/src/main/java/package/config/AsyncConfiguration.java.ejs +6 -0
  129. package/generators/{client/templates/react/src/main/webapp/app/entities/index.tsx.ejs → server/templates/src/main/java/package/config/KafkaSseConsumer.java.ejs} +8 -14
  130. package/generators/server/templates/src/main/java/package/config/KafkaSseProducer.java.ejs +30 -0
  131. package/generators/server/templates/src/main/java/package/config/SecurityConfiguration.java.ejs +12 -10
  132. package/generators/server/templates/src/main/java/package/repository/EntityManager.java.ejs +3 -3
  133. package/generators/server/templates/src/main/java/package/security/jwt/JWTFilter.java.ejs +1 -1
  134. package/generators/server/templates/src/main/java/package/security/jwt/TokenProvider.java.ejs +1 -1
  135. package/generators/server/templates/src/main/java/package/web/rest/KafkaResource.java.ejs +60 -108
  136. package/generators/server/templates/src/main/java/package/web/rest/KafkaResource_reactive.java.ejs +74 -0
  137. package/generators/server/templates/src/main/resources/config/application.yml.ejs +26 -22
  138. package/generators/server/templates/src/test/java/package/CassandraKeyspaceIT.java.ejs +3 -4
  139. package/generators/server/templates/src/test/java/package/IntegrationTest.java.ejs +9 -3
  140. package/generators/server/templates/src/test/java/package/TechnicalStructureTest.java.ejs +0 -3
  141. package/generators/server/templates/src/test/java/package/config/CassandraTestContainer.java.ejs +122 -0
  142. package/generators/server/templates/src/test/java/package/config/EmbeddedCassandra.java.ejs +11 -0
  143. package/generators/server/templates/src/test/java/package/config/EmbeddedKafka.java.ejs +11 -0
  144. package/generators/server/templates/src/test/java/package/config/EmbeddedMongo.java.ejs +11 -0
  145. package/generators/server/templates/src/test/java/package/config/KafkaTestContainer.java.ejs +38 -0
  146. package/generators/server/templates/src/test/java/package/config/MongoDbTestContainer.java.ejs +67 -0
  147. package/generators/server/templates/src/test/java/package/config/TestContainersSpringContextCustomizerFactory.java.ejs +114 -0
  148. package/generators/server/templates/src/test/java/package/cucumber/CucumberIT.java.ejs +3 -10
  149. package/generators/server/templates/src/test/java/package/security/DomainUserDetailsServiceIT.java.ejs +1 -4
  150. package/generators/server/templates/src/test/java/package/security/jwt/JWTFilterTest.java.ejs +5 -5
  151. package/generators/server/templates/src/test/java/package/service/MailServiceIT.java.ejs +2 -4
  152. package/generators/server/templates/src/test/java/package/service/UserServiceIT.java.ejs +1 -4
  153. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT.java.ejs +3 -3
  154. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT_oauth2.java.ejs +1 -4
  155. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT_skipUserManagement.java.ejs +1 -4
  156. package/generators/server/templates/src/test/java/package/web/rest/KafkaResourceIT.java.ejs +52 -123
  157. package/generators/server/templates/src/test/java/package/web/rest/KafkaResourceIT_reactive.java.ejs +99 -0
  158. package/generators/server/templates/src/test/java/package/web/rest/PublicUserResourceIT.java.ejs +7 -10
  159. package/generators/server/templates/src/test/java/package/web/rest/UserJWTControllerIT.java.ejs +1 -4
  160. package/generators/server/templates/src/test/java/package/web/rest/UserResourceIT.java.ejs +2 -5
  161. package/generators/server/templates/src/test/java/package/web/rest/errors/ExceptionTranslatorIT.java.ejs +1 -4
  162. package/generators/server/templates/src/test/java/package/web/rest/errors/ExceptionTranslatorIT_reactive.java.ejs +1 -4
  163. package/generators/server/templates/src/test/resources/META-INF/spring.factories.ejs +1 -1
  164. package/generators/server/templates/src/test/resources/config/application.yml.ejs +21 -20
  165. package/generators/server/templates/src/test/resources/testcontainers.properties.ejs +1 -0
  166. package/generators/workspaces/index.js +2 -1
  167. package/package.json +15 -15
  168. package/utils/entity.js +2 -0
  169. package/utils/field.js +8 -3
  170. package/utils/relationship.js +10 -1
  171. package/generators/entity-server/templates/src/main/java/package/repository/search/SortToSortBuilderListConverter.java.ejs +0 -25
  172. package/generators/maven/templates/.mvn/wrapper/MavenWrapperDownloader.java +0 -117
  173. package/generators/server/templates/.mvn/wrapper/MavenWrapperDownloader.java +0 -117
  174. package/generators/server/templates/src/main/java/package/config/KafkaProperties.java.ejs +0 -68
  175. package/generators/server/templates/src/test/java/package/AbstractCassandraTest.java.ejs +0 -125
  176. package/generators/server/templates/src/test/java/package/MongoDbTestContainerExtension.java.ejs +0 -37
  177. package/generators/server/templates/src/test/java/package/TestContainersSpringContextCustomizerFactory.java.ejs +0 -24
@@ -24,7 +24,7 @@ const commonPackageJson = require('./common/templates/package.json');
24
24
 
25
25
  // Version of Java
26
26
  const JAVA_VERSION = '11';
27
- const JAVA_COMPATIBLE_VERSIONS = ['11', '12', '13', '14', '15', '16', '17'];
27
+ const JAVA_COMPATIBLE_VERSIONS = ['11', '12', '13', '14', '15', '16', '17', '18'];
28
28
 
29
29
  // Version of Node, NPM
30
30
  const NODE_VERSION = '16.14.0';
@@ -32,15 +32,15 @@ const NPM_VERSION = commonPackageJson.devDependencies.npm;
32
32
  const OPENAPI_GENERATOR_CLI_VERSION = '1.0.13-4.3.1';
33
33
 
34
34
  const GRADLE_VERSION = gradleOptions.GRADLE_VERSION;
35
- const JIB_VERSION = '3.2.0';
35
+ const JIB_VERSION = '3.2.1';
36
36
 
37
37
  // Libraries version
38
- const JHIPSTER_DEPENDENCIES_VERSION = '7.7.0';
38
+ const JHIPSTER_DEPENDENCIES_VERSION = '7.8.0';
39
39
  // The spring-boot version should match the one managed by https://mvnrepository.com/artifact/tech.jhipster/jhipster-dependencies/JHIPSTER_DEPENDENCIES_VERSION
40
- const SPRING_BOOT_VERSION = '2.6.3';
40
+ const SPRING_BOOT_VERSION = '2.6.6';
41
41
  const LIQUIBASE_VERSION = '4.6.1';
42
42
  const LIQUIBASE_DTD_VERSION = LIQUIBASE_VERSION.split('.', 3).slice(0, 2).join('.');
43
- const HIBERNATE_VERSION = '5.6.4.Final';
43
+ const HIBERNATE_VERSION = '5.6.7.Final';
44
44
 
45
45
  const JACOCO_VERSION = '0.8.7';
46
46
  const KAFKA_VERSION = '5.5.7';
@@ -88,7 +88,6 @@ const generatedAnnotationTransform = generator => {
88
88
  return passthrough(file => {
89
89
  if (
90
90
  !file.path.endsWith('package-info.java') &&
91
- !file.path.endsWith('MavenWrapperDownloader.java') &&
92
91
  path.extname(file.path) === '.java' &&
93
92
  !isFileStateDeleted(file) &&
94
93
  !file.path.endsWith('GeneratedByJHipster.java')
@@ -16,7 +16,7 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  */
19
- const GRADLE_VERSION = '7.3.1';
19
+ const GRADLE_VERSION = '7.4.2';
20
20
  const GRADLE = 'gradle';
21
21
  const GRADLE_DESCRIPTION = 'Gradle';
22
22
  const BUILD_DESTINATION_VALUE = 'build';
@@ -28,7 +28,6 @@ module.exports.files = {
28
28
  { file: 'mvnw.cmd', method: 'copy', noEjs: true },
29
29
  { file: '.mvn/wrapper/maven-wrapper.jar', method: 'copy', noEjs: true },
30
30
  { file: '.mvn/wrapper/maven-wrapper.properties', method: 'copy', noEjs: true },
31
- { file: '.mvn/wrapper/MavenWrapperDownloader.java', method: 'copy', noEjs: true },
32
31
  'pom.xml.jhi',
33
32
  ],
34
33
  },
@@ -1,2 +1,18 @@
1
- distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2
- wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.4/apache-maven-3.8.4-bin.zip
18
+ wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar
@@ -8,7 +8,7 @@
8
8
  # "License"); you may not use this file except in compliance
9
9
  # with the License. You may obtain a copy of the License at
10
10
  #
11
- # https://www.apache.org/licenses/LICENSE-2.0
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
12
  #
13
13
  # Unless required by applicable law or agreed to in writing,
14
14
  # software distributed under the License is distributed on an
@@ -36,6 +36,10 @@
36
36
 
37
37
  if [ -z "$MAVEN_SKIP_RC" ] ; then
38
38
 
39
+ if [ -f /usr/local/etc/mavenrc ] ; then
40
+ . /usr/local/etc/mavenrc
41
+ fi
42
+
39
43
  if [ -f /etc/mavenrc ] ; then
40
44
  . /etc/mavenrc
41
45
  fi
@@ -145,7 +149,7 @@ if [ -z "$JAVACMD" ] ; then
145
149
  JAVACMD="$JAVA_HOME/bin/java"
146
150
  fi
147
151
  else
148
- JAVACMD="`which java`"
152
+ JAVACMD="`\\unset -f command; \\command -v java`"
149
153
  fi
150
154
  fi
151
155
 
@@ -212,9 +216,9 @@ else
212
216
  echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
213
217
  fi
214
218
  if [ -n "$MVNW_REPOURL" ]; then
215
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
219
+ jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
216
220
  else
217
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
221
+ jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
218
222
  fi
219
223
  while IFS="=" read key value; do
220
224
  case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
@@ -233,9 +237,9 @@ else
233
237
  echo "Found wget ... using wget"
234
238
  fi
235
239
  if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
236
- wget "$jarUrl" -O "$wrapperJarPath"
240
+ wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
237
241
  else
238
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
242
+ wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
239
243
  fi
240
244
  elif command -v curl > /dev/null; then
241
245
  if [ "$MVNW_VERBOSE" = true ]; then
@@ -305,6 +309,8 @@ WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
305
309
 
306
310
  exec "$JAVACMD" \
307
311
  $MAVEN_OPTS \
312
+ $MAVEN_DEBUG_OPTS \
308
313
  -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
309
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
314
+ "-Dmaven.home=${M2_HOME}" \
315
+ "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
310
316
  ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
@@ -7,7 +7,7 @@
7
7
  @REM "License"); you may not use this file except in compliance
8
8
  @REM with the License. You may obtain a copy of the License at
9
9
  @REM
10
- @REM https://www.apache.org/licenses/LICENSE-2.0
10
+ @REM http://www.apache.org/licenses/LICENSE-2.0
11
11
  @REM
12
12
  @REM Unless required by applicable law or agreed to in writing,
13
13
  @REM software distributed under the License is distributed on an
@@ -46,8 +46,8 @@ if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
46
46
  @REM Execute a user defined script before this one
47
47
  if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
48
48
  @REM check for pre script, once with legacy .bat ending and once with .cmd ending
49
- if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
50
- if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
49
+ if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
50
+ if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
51
51
  :skipRcPre
52
52
 
53
53
  @setlocal
@@ -120,9 +120,9 @@ SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
120
120
  set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
121
121
  set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
122
122
 
123
- set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
123
+ set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
124
124
 
125
- FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
125
+ FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
126
126
  IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
127
127
  )
128
128
 
@@ -134,7 +134,7 @@ if exist %WRAPPER_JAR% (
134
134
  )
135
135
  ) else (
136
136
  if not "%MVNW_REPOURL%" == "" (
137
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
137
+ SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
138
138
  )
139
139
  if "%MVNW_VERBOSE%" == "true" (
140
140
  echo Couldn't find %WRAPPER_JAR%, downloading it ...
@@ -158,7 +158,13 @@ if exist %WRAPPER_JAR% (
158
158
  @REM work with both Windows and non-Windows executions.
159
159
  set MAVEN_CMD_LINE_ARGS=%*
160
160
 
161
- %MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
161
+ %MAVEN_JAVA_EXE% ^
162
+ %JVM_CONFIG_MAVEN_PROPS% ^
163
+ %MAVEN_OPTS% ^
164
+ %MAVEN_DEBUG_OPTS% ^
165
+ -classpath %WRAPPER_JAR% ^
166
+ "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
167
+ %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
162
168
  if ERRORLEVEL 1 goto error
163
169
  goto end
164
170
 
@@ -168,15 +174,15 @@ set ERROR_CODE=1
168
174
  :end
169
175
  @endlocal & set ERROR_CODE=%ERROR_CODE%
170
176
 
171
- if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
177
+ if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
172
178
  @REM check for post script, once with legacy .bat ending and once with .cmd ending
173
- if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
174
- if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
179
+ if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
180
+ if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
175
181
  :skipRcPost
176
182
 
177
183
  @REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
178
- if "%MAVEN_BATCH_PAUSE%" == "on" pause
184
+ if "%MAVEN_BATCH_PAUSE%"=="on" pause
179
185
 
180
- if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
186
+ if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%
181
187
 
182
- exit /B %ERROR_CODE%
188
+ cmd /C exit /B %ERROR_CODE%
@@ -59,7 +59,7 @@
59
59
  <properties>
60
60
  <java.version><%= JAVA_VERSION %></java.version>
61
61
 
62
- <compiler-plugin.version>3.8.1</compiler-plugin.version>
62
+ <compiler-plugin.version>3.8.4</compiler-plugin.version>
63
63
  <surefire-plugin.version>3.0.0-M5</surefire-plugin.version>
64
64
  <&- fragments.propertiesSection() -&>
65
65
  </properties>
@@ -8,6 +8,10 @@
8
8
  * @param {string} mainResourceDir - Main resources directory
9
9
  * @param {string} testResourceDir - Test resources directory
10
10
  */
11
+ const { CASSANDRA, MONGODB } = require('../../jdl/jhipster/database-types');
12
+ const { ELASTICSEARCH } = require('../../jdl/jhipster/search-engine-types');
13
+ const { KAFKA } = require('../../jdl/jhipster/message-broker-types');
14
+
11
15
  function cleanupOldServerFiles(generator, javaDir, testDir, mainResourceDir, testResourceDir) {
12
16
  if (generator.isJhipsterVersionLessThan('3.5.0')) {
13
17
  generator.removeFile(`${javaDir}domain/util/JSR310DateTimeSerializer.java`);
@@ -78,7 +82,7 @@ function cleanupOldServerFiles(generator, javaDir, testDir, mainResourceDir, tes
78
82
  }
79
83
  if (generator.isJhipsterVersionLessThan('5.8.0')) {
80
84
  generator.removeFile(`${javaDir}config/MetricsConfiguration.java`);
81
- if (generator.databaseType === 'cassandra') {
85
+ if (generator.databaseType === CASSANDRA) {
82
86
  generator.removeFile(`${testResourceDir}cassandra-random-port.yml`);
83
87
  }
84
88
  }
@@ -125,7 +129,7 @@ function cleanupOldServerFiles(generator, javaDir, testDir, mainResourceDir, tes
125
129
  generator.removeFile(`${testDir}web/rest/AuditResourceIT.java`);
126
130
  generator.removeFile(`${testDir}repository/CustomAuditEventRepositoryIT.java`);
127
131
 
128
- if (generator.databaseType === 'cassandra') {
132
+ if (generator.databaseType === CASSANDRA) {
129
133
  generator.removeFile(`${javaDir}config/metrics/package-info.java`);
130
134
  generator.removeFile(`${javaDir}config/metrics/CassandraHealthIndicator.java`);
131
135
  generator.removeFile(`${javaDir}config/metrics/JHipsterHealthIndicatorConfiguration.java`);
@@ -133,7 +137,7 @@ function cleanupOldServerFiles(generator, javaDir, testDir, mainResourceDir, tes
133
137
  generator.removeFile(`${javaDir}config/cassandra/CassandraConfiguration.java`);
134
138
  generator.removeFile(`${testDir}config/CassandraConfigurationIT.java`);
135
139
  }
136
- if (generator.searchEngine === 'elasticsearch') {
140
+ if (generator.searchEngine === ELASTICSEARCH) {
137
141
  generator.removeFile(`${testDir}config/ElasticsearchTestConfiguration.java`);
138
142
  }
139
143
  }
@@ -144,6 +148,18 @@ function cleanupOldServerFiles(generator, javaDir, testDir, mainResourceDir, tes
144
148
  generator.removeFile(`${javaDir}config/apidocs/GatewaySwaggerResourcesProvider.java`);
145
149
  generator.removeFile(`${testDir}config/apidocs/GatewaySwaggerResourcesProviderTest.java`);
146
150
  }
151
+ if (generator.isJhipsterVersionLessThan('7.7.1')) {
152
+ if (generator.databaseType === MONGODB) {
153
+ generator.removeFile(`${testDir}MongoDbTestContainerExtension.java`);
154
+ }
155
+ generator.removeFile(`${testDir}TestContainersSpringContextCustomizerFactory.java`);
156
+ if (generator.databaseType === CASSANDRA) {
157
+ generator.removeFile(`${testDir}AbstractCassandraTest.java`);
158
+ }
159
+ if (generator.messageBroker === KAFKA) {
160
+ generator.removeFile(`${javaDir}config/KafkaProperties.java`);
161
+ }
162
+ }
147
163
  }
148
164
 
149
165
  module.exports = {
@@ -108,8 +108,16 @@ const mongoDbFiles = {
108
108
  path: SERVER_TEST_SRC_DIR,
109
109
  templates: [
110
110
  {
111
- file: 'package/MongoDbTestContainerExtension.java',
112
- renameTo: generator => `${generator.testDir}MongoDbTestContainerExtension.java`,
111
+ file: 'package/config/MongoDbTestContainer.java',
112
+ renameTo: generator => `${generator.testDir}config/MongoDbTestContainer.java`,
113
+ },
114
+ {
115
+ file: 'package/config/EmbeddedMongo.java',
116
+ renameTo: generator => `${generator.testDir}config/EmbeddedMongo.java`,
117
+ },
118
+ {
119
+ file: 'package/config/TestContainersSpringContextCustomizerFactory.java',
120
+ renameTo: generator => `${generator.testDir}config/TestContainersSpringContextCustomizerFactory.java`,
113
121
  },
114
122
  ],
115
123
  },
@@ -119,14 +127,8 @@ const mongoDbFiles = {
119
127
  {
120
128
  file: 'META-INF/spring.factories',
121
129
  },
122
- ],
123
- },
124
- {
125
- path: SERVER_TEST_SRC_DIR,
126
- templates: [
127
130
  {
128
- file: 'package/TestContainersSpringContextCustomizerFactory.java',
129
- renameTo: generator => `${generator.testDir}TestContainersSpringContextCustomizerFactory.java`,
131
+ file: 'testcontainers.properties',
130
132
  },
131
133
  ],
132
134
  },
@@ -222,7 +224,29 @@ const cassandraFiles = {
222
224
  file: 'package/CassandraKeyspaceIT.java',
223
225
  renameTo: generator => `${generator.testDir}CassandraKeyspaceIT.java`,
224
226
  },
225
- { file: 'package/AbstractCassandraTest.java', renameTo: generator => `${generator.testDir}AbstractCassandraTest.java` },
227
+ {
228
+ file: 'package/config/CassandraTestContainer.java',
229
+ renameTo: generator => `${generator.testDir}config/CassandraTestContainer.java`,
230
+ },
231
+ {
232
+ file: 'package/config/EmbeddedCassandra.java',
233
+ renameTo: generator => `${generator.testDir}config/EmbeddedCassandra.java`,
234
+ },
235
+ {
236
+ file: 'package/config/TestContainersSpringContextCustomizerFactory.java',
237
+ renameTo: generator => `${generator.testDir}config/TestContainersSpringContextCustomizerFactory.java`,
238
+ },
239
+ ],
240
+ },
241
+ {
242
+ path: SERVER_TEST_RES_DIR,
243
+ templates: [
244
+ {
245
+ file: 'META-INF/spring.factories',
246
+ },
247
+ {
248
+ file: 'testcontainers.properties',
249
+ },
226
250
  ],
227
251
  },
228
252
  ],
@@ -340,7 +364,11 @@ const baseServerFiles = {
340
364
  ],
341
365
  serverBuild: [
342
366
  {
343
- templates: [{ file: 'checkstyle.xml', options: { interpolate: INTERPOLATE_REGEX } }],
367
+ templates: [
368
+ { file: 'checkstyle.xml', options: { interpolate: INTERPOLATE_REGEX } },
369
+ { file: 'devcontainer/devcontainer.json', renameTo: () => '.devcontainer/devcontainer.json' },
370
+ { file: 'devcontainer/Dockerfile', renameTo: () => '.devcontainer/Dockerfile' },
371
+ ],
344
372
  },
345
373
  {
346
374
  condition: generator => generator.buildTool === GRADLE,
@@ -369,9 +397,9 @@ const baseServerFiles = {
369
397
  templates: [
370
398
  { file: 'mvnw', method: 'copy', noEjs: true },
371
399
  { file: 'mvnw.cmd', method: 'copy', noEjs: true },
400
+ { file: '.mvn/jvm.config', method: 'copy', noEjs: true },
372
401
  { file: '.mvn/wrapper/maven-wrapper.jar', method: 'copy', noEjs: true },
373
402
  { file: '.mvn/wrapper/maven-wrapper.properties', method: 'copy', noEjs: true },
374
- { file: '.mvn/wrapper/MavenWrapperDownloader.java', method: 'copy', noEjs: true },
375
403
  { file: 'pom.xml', options: { interpolate: INTERPOLATE_REGEX } },
376
404
  ],
377
405
  },
@@ -1091,8 +1119,12 @@ const baseServerFiles = {
1091
1119
  path: SERVER_MAIN_SRC_DIR,
1092
1120
  templates: [
1093
1121
  {
1094
- file: 'package/config/KafkaProperties.java',
1095
- renameTo: generator => `${generator.javaDir}config/KafkaProperties.java`,
1122
+ file: 'package/config/KafkaSseConsumer.java',
1123
+ renameTo: generator => `${generator.javaDir}config/KafkaSseConsumer.java`,
1124
+ },
1125
+ {
1126
+ file: 'package/config/KafkaSseProducer.java',
1127
+ renameTo: generator => `${generator.javaDir}config/KafkaSseProducer.java`,
1096
1128
  },
1097
1129
  ],
1098
1130
  },
@@ -1177,7 +1209,17 @@ const baseServerFiles = {
1177
1209
  ],
1178
1210
  },
1179
1211
  {
1180
- condition: generator => generator.messageBroker === KAFKA,
1212
+ condition: generator => generator.messageBroker === KAFKA && generator.reactive,
1213
+ path: SERVER_MAIN_SRC_DIR,
1214
+ templates: [
1215
+ {
1216
+ file: 'package/web/rest/KafkaResource_reactive.java',
1217
+ renameTo: generator => `${generator.javaDir}web/rest/${generator.upperFirstCamelCase(generator.baseName)}KafkaResource.java`,
1218
+ },
1219
+ ],
1220
+ },
1221
+ {
1222
+ condition: generator => generator.messageBroker === KAFKA && !generator.reactive,
1181
1223
  path: SERVER_MAIN_SRC_DIR,
1182
1224
  templates: [
1183
1225
  {
@@ -1426,6 +1468,24 @@ const baseServerFiles = {
1426
1468
  {
1427
1469
  condition: generator => generator.messageBroker === KAFKA,
1428
1470
  path: SERVER_TEST_SRC_DIR,
1471
+ templates: [
1472
+ {
1473
+ file: 'package/config/KafkaTestContainer.java',
1474
+ renameTo: generator => `${generator.testDir}config/KafkaTestContainer.java`,
1475
+ },
1476
+ {
1477
+ file: 'package/config/EmbeddedKafka.java',
1478
+ renameTo: generator => `${generator.testDir}config/EmbeddedKafka.java`,
1479
+ },
1480
+ {
1481
+ file: 'package/config/TestContainersSpringContextCustomizerFactory.java',
1482
+ renameTo: generator => `${generator.testDir}config/TestContainersSpringContextCustomizerFactory.java`,
1483
+ },
1484
+ ],
1485
+ },
1486
+ {
1487
+ condition: generator => generator.messageBroker === KAFKA && !generator.reactive,
1488
+ path: SERVER_TEST_SRC_DIR,
1429
1489
  templates: [
1430
1490
  {
1431
1491
  file: 'package/web/rest/KafkaResourceIT.java',
@@ -1433,6 +1493,28 @@ const baseServerFiles = {
1433
1493
  },
1434
1494
  ],
1435
1495
  },
1496
+ {
1497
+ condition: generator => generator.messageBroker === KAFKA && generator.reactive,
1498
+ path: SERVER_TEST_SRC_DIR,
1499
+ templates: [
1500
+ {
1501
+ file: 'package/web/rest/KafkaResourceIT_reactive.java',
1502
+ renameTo: generator => `${generator.testDir}web/rest/${generator.upperFirstCamelCase(generator.baseName)}KafkaResourceIT.java`,
1503
+ },
1504
+ ],
1505
+ },
1506
+ {
1507
+ condition: generator => generator.messageBroker === KAFKA,
1508
+ path: SERVER_TEST_RES_DIR,
1509
+ templates: [
1510
+ {
1511
+ file: 'META-INF/spring.factories',
1512
+ },
1513
+ {
1514
+ file: 'testcontainers.properties',
1515
+ },
1516
+ ],
1517
+ },
1436
1518
  ],
1437
1519
  serverJavaUserManagement: [
1438
1520
  {
@@ -1711,7 +1793,8 @@ const baseServerFiles = {
1711
1793
  ],
1712
1794
  },
1713
1795
  {
1714
- condition: generator => !generator.skipUserManagement && generator.cucumberTests,
1796
+ condition: generator =>
1797
+ !generator.skipUserManagement && generator.cucumberTests && !generator.databaseTypeMongodb && !generator.databaseTypeCassandra,
1715
1798
  path: SERVER_TEST_SRC_DIR,
1716
1799
  templates: [
1717
1800
  {
@@ -1721,7 +1804,8 @@ const baseServerFiles = {
1721
1804
  ],
1722
1805
  },
1723
1806
  {
1724
- condition: generator => !generator.skipUserManagement && generator.cucumberTests,
1807
+ condition: generator =>
1808
+ !generator.skipUserManagement && generator.cucumberTests && !generator.databaseTypeMongodb && !generator.databaseTypeCassandra,
1725
1809
  path: SERVER_TEST_RES_DIR,
1726
1810
  templates: [
1727
1811
  {
@@ -476,6 +476,11 @@ module.exports = class JHipsterServerGenerator extends BaseBlueprintGenerator {
476
476
  this.removeFile(`${this.mainJavaPackageDir}config/apidocs/GatewaySwaggerResourcesProvider.java`);
477
477
  this.removeFile(`${this.testJavaDir}config/apidocs/GatewaySwaggerResourcesProviderTest.java`);
478
478
  }
479
+ if (this.isJhipsterVersionLessThan('7.7.1')) {
480
+ if (this.buildToolMaven) {
481
+ this.removeFile('.mvn/wrapper/MavenWrapperDownloader.java');
482
+ }
483
+ }
479
484
  },
480
485
  ...writeFiles(),
481
486
  ...super._missingPostWriting(),
@@ -507,7 +512,7 @@ module.exports = class JHipsterServerGenerator extends BaseBlueprintGenerator {
507
512
  } else {
508
513
  scriptsStorage.set({
509
514
  'docker:db:up': `docker-compose -f src/main/docker/${prodDatabaseType}.yml up -d`,
510
- 'docker:db:down': `docker-compose -f src/main/docker/${prodDatabaseType}.yml down -v --remove-orphans`,
515
+ 'docker:db:down': `docker-compose -f src/main/docker/${prodDatabaseType}.yml down -v`,
511
516
  });
512
517
  }
513
518
  } else {
@@ -526,12 +531,12 @@ module.exports = class JHipsterServerGenerator extends BaseBlueprintGenerator {
526
531
  scriptsStorage.set({
527
532
  'docker:db:build': `docker-compose -f ${dockerFile} build`,
528
533
  'docker:db:up': `docker-compose -f ${dockerFile} up -d`,
529
- 'docker:db:down': `docker-compose -f ${dockerFile} down -v --remove-orphans`,
534
+ 'docker:db:down': `docker-compose -f ${dockerFile} down -v`,
530
535
  });
531
536
  } else if (this.fs.exists(this.destinationPath(dockerFile))) {
532
537
  scriptsStorage.set({
533
538
  'docker:db:up': `docker-compose -f ${dockerFile} up -d`,
534
- 'docker:db:down': `docker-compose -f ${dockerFile} down -v --remove-orphans`,
539
+ 'docker:db:down': `docker-compose -f ${dockerFile} down -v`,
535
540
  });
536
541
  } else {
537
542
  scriptsStorage.set('docker:db:up', `echo "Docker for db ${databaseType} not configured for application ${this.baseName}"`);
@@ -564,7 +569,7 @@ module.exports = class JHipsterServerGenerator extends BaseBlueprintGenerator {
564
569
 
565
570
  scriptsStorage.set(`docker:${dockerConfig}:up`, `docker-compose -f ${dockerFile} up -d`);
566
571
  dockerOthersUp.push(`npm run docker:${dockerConfig}:up`);
567
- scriptsStorage.set(`docker:${dockerConfig}:down`, `docker-compose -f ${dockerFile} down -v --remove-orphans`);
572
+ scriptsStorage.set(`docker:${dockerConfig}:down`, `docker-compose -f ${dockerFile} down -v`);
568
573
  dockerOthersDown.push(`npm run docker:${dockerConfig}:down`);
569
574
  }
570
575
  });
@@ -641,8 +646,9 @@ module.exports = class JHipsterServerGenerator extends BaseBlueprintGenerator {
641
646
  const scriptsStorage = this.packageJson.createStorage('scripts');
642
647
  const buildCmd = this.jhipsterConfig.buildTool === GRADLE ? 'gradlew' : 'mvnw';
643
648
  if (scriptsStorage.get('e2e')) {
649
+ const applicationWaitTimeout = WAIT_TIMEOUT * (this.applicationTypeGateway ? 2 : 1);
644
650
  scriptsStorage.set({
645
- 'ci:server:await': `echo "Waiting for server at port $npm_package_config_backend_port to start" && wait-on -t ${WAIT_TIMEOUT} http-get://localhost:$npm_package_config_backend_port/management/health && echo "Server at port $npm_package_config_backend_port started"`,
651
+ 'ci:server:await': `echo "Waiting for server at port $npm_package_config_backend_port to start" && wait-on -t ${applicationWaitTimeout} http-get://localhost:$npm_package_config_backend_port/management/health && echo "Server at port $npm_package_config_backend_port started"`,
646
652
  'pree2e:headless': 'npm run ci:server:await',
647
653
  'ci:e2e:run': 'concurrently -k -s first "npm run ci:e2e:server:start" "npm run e2e:headless"',
648
654
  'e2e:dev': `concurrently -k -s first "./${buildCmd}" "npm run e2e"`,
@@ -20,6 +20,7 @@ const chalk = require('chalk');
20
20
  const needleServer = require('./needle-server');
21
21
 
22
22
  const buildGradlePath = 'build.gradle';
23
+ const gradleSettingsPath = 'settings.gradle';
23
24
 
24
25
  module.exports = class extends needleServer {
25
26
  addProperty(name, value) {
@@ -92,4 +93,41 @@ module.exports = class extends needleServer {
92
93
 
93
94
  this.addBlockContentToFile(rewriteFileModel, errorMessage);
94
95
  }
96
+
97
+ addPluginToPluginManagement(id, version) {
98
+ const errorMessage = `${chalk.yellow('Reference to ')}id ${id} version ${version}${chalk.yellow(' not added.')}`;
99
+ const rewriteFileModel = this.generateFileModel(
100
+ gradleSettingsPath,
101
+ 'jhipster-needle-gradle-plugin-management-plugins',
102
+ `id '${id}' version '${version}'`
103
+ );
104
+
105
+ this.addBlockContentToFile(rewriteFileModel, errorMessage);
106
+ }
107
+
108
+ addPluginManagementRepository(url, username, password) {
109
+ const errorMessage = chalk.yellow('Reference to ') + url + chalk.yellow(' not added.');
110
+ let repository = 'maven {\n';
111
+ if (url) {
112
+ repository += ` url "${url}"\n`;
113
+ }
114
+ if (username || password) {
115
+ repository += ' credentials {\n';
116
+ if (username) {
117
+ repository += ` username = "${username}"\n`;
118
+ }
119
+ if (password) {
120
+ repository += ` password = "${password}"\n`;
121
+ }
122
+ repository += ' }\n';
123
+ }
124
+ repository += ' }';
125
+
126
+ const rewriteFileModel = this.generateFileModel(
127
+ gradleSettingsPath,
128
+ 'jhipster-needle-gradle-plugin-management-repositories',
129
+ repository
130
+ );
131
+ this.addBlockContentToFile(rewriteFileModel, errorMessage);
132
+ }
95
133
  };
@@ -0,0 +1 @@
1
+ -XX:+TieredCompilation -XX:TieredStopAtLevel=1
@@ -1,2 +1,18 @@
1
- distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2
- wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.4/apache-maven-3.8.4-bin.zip
18
+ wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar
@@ -386,6 +386,7 @@ if (SPRING_BOOT_VERSION.indexOf('M') > -1 || SPRING_BOOT_VERSION.indexOf('RC') >
386
386
  <%_ } _%>
387
387
  implementation "javax.transaction:javax.transaction-api"
388
388
  <%_ if (databaseTypeCassandra) { _%>
389
+ testImplementation "org.testcontainers:cassandra"
389
390
  implementation "org.lz4:lz4-java"
390
391
  <%_ } _%>
391
392
  <%_ if (cacheProviderEhCache) { _%>
@@ -459,11 +460,9 @@ if (SPRING_BOOT_VERSION.indexOf('M') > -1 || SPRING_BOOT_VERSION.indexOf('RC') >
459
460
  testImplementation "org.testcontainers:oracle-xe"
460
461
  <%_ } _%>
461
462
  <%_ if (messageBrokerKafka) { _%>
462
- <%_ if (reactive) { _%>
463
- implementation "io.projectreactor.kafka:reactor-kafka"
464
- <%_ } else { _%>
465
- implementation "org.apache.kafka:kafka-clients"
466
- <%_ } _%>
463
+ implementation "org.springframework.cloud:spring-cloud-stream"
464
+ implementation "org.springframework.cloud:spring-cloud-starter-stream-kafka"
465
+ testImplementation "org.springframework.cloud:spring-cloud-stream-test-support"
467
466
  <%_ } _%>
468
467
  implementation "org.springframework.boot:spring-boot-starter-security"
469
468
  implementation ("org.springframework.boot:spring-boot-starter-web<% if (reactive) { %>flux<% } %>") {
@@ -521,6 +520,9 @@ if (SPRING_BOOT_VERSION.indexOf('M') > -1 || SPRING_BOOT_VERSION.indexOf('RC') >
521
520
  implementation "com.playtika.reactivefeign:feign-reactor-spring-configuration"
522
521
  <%_ } _%>
523
522
  implementation "org.springframework.security:spring-security-config"
523
+ <%_ if (!reactive && databaseTypeSql) { _%>
524
+ implementation "org.springframework.security:spring-security-data"
525
+ <%_ } _%>
524
526
  implementation "org.springframework.security:spring-security-web"
525
527
  <%_ if (communicationSpringWebsocket) { _%>
526
528
  implementation "org.springframework.security:spring-security-messaging"