diff --git a/applications/spring-shell/src/test/java/org/springframework/sbm/BootUpgrade_27_30_IntegrationTest.java b/applications/spring-shell/src/test/java/org/springframework/sbm/BootUpgrade_27_30_IntegrationTest.java
new file mode 100644
index 000000000..b45828f35
--- /dev/null
+++ b/applications/spring-shell/src/test/java/org/springframework/sbm/BootUpgrade_27_30_IntegrationTest.java
@@ -0,0 +1,165 @@
+package org.springframework.sbm;
+
+import org.jetbrains.annotations.NotNull;
+import org.junit.jupiter.api.Test;
+import org.openrewrite.maven.MavenParser;
+import org.openrewrite.xml.tree.Xml;
+
+import java.nio.file.Path;
+
+import static org.assertj.core.api.AssertionsForInterfaceTypes.assertThat;
+
+public class BootUpgrade_27_30_IntegrationTest extends IntegrationTestBaseClass {
+
+ @Override
+ protected String getTestSubDir() {
+ return "boot-migration-27-30";
+ }
+
+ @Test
+ void migrateSimpleApplication() {
+ intializeTestProject();
+
+ scanProject();
+
+ applyRecipe("boot-2.7-3.0-dependency-version-update");
+
+ verifyParentPomVersion();
+ verifyMicrometerPackageUpdate();
+ verifyYamlConfigurationUpdate();
+ verifyPropertyConfigurationUpdate();
+ verifyConstructorBindingRemoval();
+ }
+
+ private void verifyConstructorBindingRemoval() {
+ String constructorBindingConfigClass = loadJavaFile("org.springboot.example.upgrade", "ConstructorBindingConfig");
+ assertThat(constructorBindingConfigClass).isEqualTo("package org.springboot.example.upgrade;\n" +
+ "\n" +
+ "import org.springframework.boot.context.properties.ConfigurationProperties;\n" +
+ "\n" +
+ "@ConfigurationProperties(prefix = \"mail\")\n" +
+ "public class ConstructorBindingConfig {\n" +
+ " private String hostName;\n" +
+ "\n" +
+ " public ConstructorBindingConfig(String hostName) {\n" +
+ " this.hostName = hostName;\n" +
+ " }\n" +
+ "}" +
+ "\n");
+ }
+
+ private void verifyMicrometerPackageUpdate() {
+ String micrometerClass = loadFile(Path.of("src/main/java/org/springboot/example/upgrade/MicrometerConfig.java"));
+ assertThat(micrometerClass).isEqualTo(
+ "package org.springboot.example.upgrade;\n" +
+ "\n" +
+ "import io.micrometer.binder.MeterBinder;\n" +
+ "\n" +
+ "public class MicroMeterConfig {\n" +
+ "\n" +
+ " private MeterBinder k;\n" +
+ "}\n");
+ }
+
+ private void verifyYamlConfigurationUpdate() {
+ String micrometerClass = loadFile(Path.of("src/main/resources/application.yaml"));
+ assertThat(micrometerClass).isEqualTo(
+ "spring:\n" +
+ " elasticsearch:\n" +
+ " connection-timeout: '1'\n" +
+ " password: testpassword\n" +
+ " socket-timeout: '2'\n" +
+ " restclient.sniffer.delay-after-failure: '3'\n" +
+ " restclient.sniffer.interval: '4'\n" +
+ " username: username\n" +
+ " security:\n" +
+ " saml2:\n" +
+ " relyingparty:\n" +
+ " registration:\n" +
+ " idpone:\n" +
+ " assertingparty:\n" +
+ " verification:\n" +
+ " credentials:\n" +
+ " certificate-location: classpath:saml/idpone.crt\n" +
+ " entity-id: https://idpone.com\n" +
+ " sso-url: https://idpone.com\n" +
+ " elasticsearch.connection-timeout: '1000'\n" +
+ " elasticsearch.webclient.max-in-memory-size: '122'\n" +
+ " elasticsearch.password: abc\n" +
+ " elasticsearch.socket-timeout: '100'\n" +
+ " elasticsearch.username: testUser\n" +
+ " sql.init.data-locations: testdata\n" +
+ " sql.init.password: password\n" +
+ " sql.init.username: username-data\n" +
+ " sql.init.mode: mode1\n" +
+ " sql.init.platform: pls\n" +
+ " sql.init.schema-locations: table1\n" +
+ " sql.init.password: password2\n" +
+ " sql.init.username: username-schema\n" +
+ " sql.init.separator: k\n" +
+ " sql.init.encoding: UTF-8\n" +
+ "server.reactive.session.cookie.same-site: 'true'" +
+ "\n");
+ }
+
+
+ private void verifyPropertyConfigurationUpdate() {
+
+ String applicationProperties = loadFile(Path.of("src/main/resources/application.properties"));
+ assertThat(applicationProperties).isEqualTo(
+ "spring.elasticsearch.connection-timeout=1000\n" +
+ "spring.elasticsearch.webclient.max-in-memory-size=122\n" +
+ "spring.elasticsearch.password=abc\n" +
+ "spring.elasticsearch.socket-timeout=100\n" +
+ "spring.elasticsearch.username=testUser\n" +
+ "\n" +
+ "spring.sql.init.data-locations=testdata\n" +
+ "spring.sql.init.password=password\n" +
+ "spring.sql.init.username=username\n" +
+ "spring.sql.init.mode=mode1\n" +
+ "spring.sql.init.platform=pls\n" +
+ "spring.sql.init.schema-locations=table1\n" +
+ "spring.sql.init.password=password2\n" +
+ "spring.sql.init.username=username2\n" +
+ "spring.sql.init.separator=k\n" +
+ "spring.sql.init.encoding=UTF-8\n" +
+ "\n" +
+ "spring.elasticsearch.connection-timeout=1\n" +
+ "spring.elasticsearch.password=testpassword\n" +
+ "spring.elasticsearch.socket-timeout=2\n" +
+ "spring.elasticsearch.restclient.sniffer.delay-after-failure=3\n" +
+ "spring.elasticsearch.restclient.sniffer.interval=4\n" +
+ "spring.elasticsearch.username=username\n" +
+ "\n" +
+ "spring.security.saml2.relyingparty.registration.idpone.assertingparty.entity-id=https://idpone.com\n" +
+ "spring.security.saml2.relyingparty.registration.idpone.assertingparty.sso-url=https://idpone.com\n" +
+ "spring.security.saml2.relyingparty.registration.idpone.assertingparty.verification.credentials.certificate-location=classpath:saml/idpone.crt\n" +
+ "\n" +
+ "server.reactive.session.cookie.same-site=true\n");
+ }
+
+ private void verifyParentPomVersion() {
+ String pomContent = loadFile(Path.of("pom.xml"));
+
+ Xml.Document mavenAsXMLDocument = parsePom(pomContent);
+
+ Xml.Tag parentTag =mavenAsXMLDocument
+ .getRoot()
+ .getChildren("parent").get(0);
+
+ String version = parentTag.getChildValue("version").get();
+
+ String groupId = parentTag.getChildValue("groupId").get();
+ String artifactId = parentTag.getChildValue("artifactId").get();
+
+ assertThat(version).isEqualTo("3.0.0-M3");
+ assertThat(groupId).isEqualTo("org.springframework.boot");
+ assertThat(artifactId).isEqualTo("spring-boot-starter-parent");
+ }
+
+ @NotNull
+ private Xml.Document parsePom(String pomContent) {
+ MavenParser mavenParser = new MavenParser.Builder().build();
+ return mavenParser.parse(pomContent).get(0);
+ }
+}
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/pom.xml b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/pom.xml
new file mode 100644
index 000000000..1f19b4d56
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/pom.xml
@@ -0,0 +1,75 @@
+
+
+ 4.0.0
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.7.1
+
+
+ com.example
+ boot-upgrade-27_30
+ 0.0.1-SNAPSHOT
+ boot-upgrade-27_30
+ boot-upgrade-27_30
+
+ 17
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ io.micrometer
+ micrometer-registry-prometheus
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+
+
+ spring-snapshot
+ https://repo.spring.io/snapshot
+
+ false
+
+
+
+ spring-milestone
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+
+
+
+
+
+
+
+ spring-release
+ https://repo.spring.io/release
+
+ false
+
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
+
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/BootUpgrade2730Application.java b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/BootUpgrade2730Application.java
new file mode 100644
index 000000000..52790113a
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/BootUpgrade2730Application.java
@@ -0,0 +1,13 @@
+package org.springboot.example.upgrade;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.Bean;
+
+@SpringBootApplication
+public class BootUpgrade2730Application {
+
+ public static void main(String[] args) {
+ SpringApplication.run(BootUpgrade2730Application.class, args);
+ }
+}
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/ConstructorBindingConfig.java b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/ConstructorBindingConfig.java
new file mode 100644
index 000000000..d4a485b9a
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/ConstructorBindingConfig.java
@@ -0,0 +1,14 @@
+package org.springboot.example.upgrade;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.ConstructorBinding;
+
+@ConfigurationProperties(prefix = "mail")
+@ConstructorBinding
+public class ConstructorBindingConfig {
+ private String hostName;
+
+ public ConstructorBindingConfig(String hostName) {
+ this.hostName = hostName;
+ }
+}
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/MicroMeterConfig.java b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/MicroMeterConfig.java
new file mode 100644
index 000000000..a729e5b55
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/java/org/springboot/example/upgrade/MicroMeterConfig.java
@@ -0,0 +1,8 @@
+package org.springboot.example.upgrade;
+
+import io.micrometer.core.instrument.binder.MeterBinder;
+
+public class MicroMeterConfig {
+
+ private MeterBinder k;
+}
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/resources/application.properties b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/resources/application.properties
new file mode 100644
index 000000000..efb355fce
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/resources/application.properties
@@ -0,0 +1,115 @@
+management.endpoint.jolokia.config="abc"
+management.endpoint.jolokia.enabled=true
+management.metrics.graphql.autotime.percentiles=100
+management.metrics.graphql.autotime.percentiles-histogram=20
+
+spring.activemq.broker-url=http://google.com
+spring.activemq.close-timeout=13
+spring.activemq.in-memory=true
+spring.activemq.non-blocking-redelivery=true
+spring.activemq.password=password
+spring.activemq.send-timeout=11
+spring.activemq.user=user
+spring.activemq.packages.trust-all=true
+spring.activemq.packages.trusted=true
+spring.activemq.pool.block-if-full=true
+spring.activemq.pool.block-if-full-timeout=true
+spring.activemq.pool.enabled=true
+spring.activemq.pool.idle-timeout=12
+spring.activemq.pool.max-connections=200
+spring.activemq.pool.max-sessions-per-connection=300
+spring.activemq.pool.time-between-expiration-check=22
+spring.activemq.pool.use-anonymous-producers=true
+
+spring.artemis.pool.block-if-full=true
+spring.artemis.pool.block-if-full-timeout=true
+spring.artemis.pool.enabled=true
+spring.artemis.pool.idle-timeout=1
+spring.artemis.pool.max-connections=100
+spring.artemis.pool.max-sessions-per-connection=10
+spring.artemis.pool.time-between-expiration-check=10
+spring.artemis.pool.use-anonymous-producers=true
+
+spring.cache.infinispan.config="config2"
+spring.cache.ehcache.config="config1"
+
+spring.config.use-legacy-processing=false
+
+spring.data.elasticsearch.client.reactive.connection-timeout=1000
+spring.data.elasticsearch.client.reactive.max-in-memory-size=122
+spring.data.elasticsearch.client.reactive.password=abc
+spring.data.elasticsearch.client.reactive.socket-timeout=100
+spring.data.elasticsearch.client.reactive.username=testUser
+spring.data.elasticsearch.client.reactive.use-ssl=false
+
+spring.datasource.data=testdata
+spring.datasource.data-password=password
+spring.datasource.data-username=username
+spring.datasource.initialization-mode=mode1
+spring.datasource.platform=pls
+spring.datasource.schema=table1
+spring.datasource.schema-password=password2
+spring.datasource.schema-username=username2
+spring.datasource.separator=k
+spring.datasource.sql-script-encoding=UTF-8
+
+spring.elasticsearch.rest.connection-timeout=1
+spring.elasticsearch.rest.password=testpassword
+spring.elasticsearch.rest.read-timeout=2
+spring.elasticsearch.rest.sniffer.delay-after-failure=3
+spring.elasticsearch.rest.sniffer.interval=4
+spring.elasticsearch.rest.username=username
+
+spring.graphql.websocket.path=/path
+spring.graphql.websocket.connection-init-timeout=2
+spring.graphql.schema.printer.enabled=false
+spring.graphql.schema.locations=abc
+spring.graphql.schema.introspection.enabled=true
+spring.graphql.schema.file-extensions=.txt
+spring.graphql.path=null
+spring.graphql.graphiql.path=/path2
+spring.graphql.graphiql.enabled=false
+spring.graphql.cors.max-age=22
+spring.graphql.cors.exposed-headers=fd
+spring.graphql.cors.allowed-origins=*
+spring.graphql.cors.allowed-origin-patterns=*
+spring.graphql.cors.allowed-methods=POST
+spring.graphql.cors.allowed-headers=hello
+spring.graphql.cors.allow-credentials=true
+
+spring.h2.console.enabled=true
+spring.h2.console.path="/tmp"
+spring.h2.console.settings.trace=true
+spring.h2.console.settings.web-admin-password="password"
+spring.h2.console.settings.web-allow-others=true
+
+spring.jersey.type=type1
+spring.jersey.init=true
+spring.jersey.servlet.load-on-startup=true
+spring.jersey.application-path="/path"
+spring.jersey.filter.order="desc"
+
+spring.jta.transaction-manager-id=1
+spring.jta.log-dir=/tmp
+spring.jta.atomikos.properties.transaction-manager-unique-name=name1
+spring.jta.atomikos.properties.serial-jta-transactions=transaction
+spring.jta.atomikos.properties.recovery.retry-interval=2
+spring.jta.atomikos.properties.recovery.max-retries=3
+spring.jta.atomikos.properties.recovery.forget-orphaned-log-entries-delay=4
+spring.jta.atomikos.properties.recovery.delay=5
+spring.jta.atomikos.properties.max-timeout=6
+spring.jta.atomikos.properties.max-actives=7
+spring.jta.atomikos.properties.log-base-name=/tmp1
+spring.jta.atomikos.properties.log-base-dir=/tmp2
+spring.jta.atomikos.properties.force-shutdown-on-vm-exit=true
+spring.jta.atomikos.properties.enable-logging=false
+spring.jta.atomikos.properties.default-max-wait-time-on-shutdown=8
+spring.jta.atomikos.properties.default-jta-timeout=9
+spring.jta.atomikos.properties.checkpoint-interval=10
+spring.jta.atomikos.properties.allow-sub-transactions=true
+
+spring.security.saml2.relyingparty.registration.idpone.identityprovider.entity-id=https://idpone.com
+spring.security.saml2.relyingparty.registration.idpone.identityprovider.sso-url=https://idpone.com
+spring.security.saml2.relyingparty.registration.idpone.identityprovider.verification.credentials.certificate-location=classpath:saml/idpone.crt
+
+spring.webflux.session.cookie.same-site=true
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/resources/application.yaml b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/resources/application.yaml
new file mode 100644
index 000000000..6bd2957bd
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/main/resources/application.yaml
@@ -0,0 +1,154 @@
+spring:
+ datasource:
+ data: testdata
+ data-username: username-data
+ schema-username: username-schema
+ schema-password: password2
+ schema: table1
+ initialization-mode: mode1
+ data-password: password
+ sql-script-encoding: UTF-8
+ platform: pls
+ separator: k
+ activemq:
+ pool:
+ max-sessions-per-connection: '300'
+ use-anonymous-producers: 'true'
+ block-if-full: 'true'
+ block-if-full-timeout: 'true'
+ time-between-expiration-check: '22'
+ idle-timeout: '12'
+ enabled: 'true'
+ max-connections: '200'
+ user: user
+ packages:
+ trust-all: 'true'
+ trusted: 'true'
+ send-timeout: '11'
+ password: password
+ broker-url: http://google.com
+ close-timeout: '13'
+ non-blocking-redelivery: 'true'
+ in-memory: 'true'
+ artemis:
+ pool:
+ idle-timeout: '1'
+ use-anonymous-producers: 'true'
+ block-if-full-timeout: 'true'
+ time-between-expiration-check: '10'
+ max-sessions-per-connection: '10'
+ max-connections: '100'
+ enabled: 'true'
+ block-if-full: 'true'
+ jta:
+ atomikos:
+ properties:
+ checkpoint-interval: '10'
+ recovery:
+ retry-interval: '2'
+ delay: '5'
+ max-retries: '3'
+ forget-orphaned-log-entries-delay: '4'
+ serial-jta-transactions: transaction
+ default-max-wait-time-on-shutdown: '8'
+ max-timeout: '6'
+ default-jta-timeout: '9'
+ max-actives: '7'
+ allow-sub-transactions: 'true'
+ log-base-name: /tmp1
+ transaction-manager-unique-name: name1
+ force-shutdown-on-vm-exit: 'true'
+ enable-logging: 'false'
+ log-base-dir: /tmp2
+ transaction-manager-id: '1'
+ log-dir: /tmp
+ elasticsearch:
+ rest:
+ username: username
+ read-timeout: '2'
+ connection-timeout: '1'
+ sniffer:
+ interval: '4'
+ delay-after-failure: '3'
+ password: testpassword
+ data:
+ elasticsearch:
+ client:
+ reactive:
+ connection-timeout: '1000'
+ password: abc
+ use-ssl: 'false'
+ socket-timeout: '100'
+ max-in-memory-size: '122'
+ username: testUser
+ h2:
+ console:
+ path: '"/tmp"'
+ settings:
+ web-admin-password: '"password"'
+ web-allow-others: 'true'
+ trace: 'true'
+ enabled: 'true'
+ graphql:
+ schema:
+ file-extensions: .txt
+ introspection:
+ enabled: 'true'
+ locations: abc
+ printer:
+ enabled: 'false'
+ cors:
+ allowed-origins: '*'
+ allowed-headers: hello
+ allow-credentials: 'true'
+ allowed-origin-patterns: '*'
+ allowed-methods: POST
+ exposed-headers: fd
+ max-age: '22'
+ path: 'null'
+ graphiql:
+ enabled: 'false'
+ path: /path2
+ websocket:
+ path: /path
+ connection-init-timeout: '2'
+ jersey:
+ servlet:
+ load-on-startup: 'true'
+ application-path: '"/path"'
+ filter:
+ order: '"desc"'
+ init: 'true'
+ type: type1
+ config:
+ use-legacy-processing: 'false'
+ security:
+ saml2:
+ relyingparty:
+ registration:
+ idpone:
+ identityprovider:
+ verification:
+ credentials:
+ certificate-location: classpath:saml/idpone.crt
+ entity-id: https://idpone.com
+ sso-url: https://idpone.com
+ webflux:
+ session:
+ cookie:
+ same-site: 'true'
+ cache:
+ infinispan:
+ config: '"config2"'
+ ehcache:
+ config: '"config1"'
+management:
+ metrics:
+ graphql:
+ autotime:
+ percentiles: '100'
+ percentiles-histogram: '20'
+ endpoint:
+ jolokia:
+ enabled: 'true'
+ config: '"abc"'
diff --git a/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/test/java/org/springboot/example/upgrade/BootUpgrade2730ApplicationTests.java b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/test/java/org/springboot/example/upgrade/BootUpgrade2730ApplicationTests.java
new file mode 100644
index 000000000..e1dc7f7ba
--- /dev/null
+++ b/applications/spring-shell/src/test/resources/testcode/boot-migration-27-30/src/test/java/org/springboot/example/upgrade/BootUpgrade2730ApplicationTests.java
@@ -0,0 +1,12 @@
+package org.springboot.example.upgrade;
+
+import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+class BootUpgrade2730ApplicationTests {
+
+ @Test
+ void contextLoads() {
+ }
+}
diff --git a/components/sbm-core/src/main/java/org/springframework/sbm/engine/recipe/RewriteRecipeLoader.java b/components/sbm-core/src/main/java/org/springframework/sbm/engine/recipe/RewriteRecipeLoader.java
index 970efcd09..726dbf3f2 100644
--- a/components/sbm-core/src/main/java/org/springframework/sbm/engine/recipe/RewriteRecipeLoader.java
+++ b/components/sbm-core/src/main/java/org/springframework/sbm/engine/recipe/RewriteRecipeLoader.java
@@ -24,20 +24,20 @@
import java.util.Optional;
//
-// @Component
+@Component
public class RewriteRecipeLoader implements RecipeLoader {
@Override
public List loadRecipes() {
List recipeList = new ArrayList<>();
-
- Environment environment = Environment.builder()
- .scanRuntimeClasspath()
- .build();
-
- environment.listRecipes().forEach(r -> {
- Recipe recipe = new Recipe("Rewrite: " + r.getDisplayName(), r.getDescription(), Condition.TRUE, List.of(new OpenRewriteRecipeAdapterAction(r)));
- recipeList.add(recipe);
- });
+//
+// Environment environment = Environment.builder()
+// .scanRuntimeClasspath()
+// .build();
+//
+// environment.listRecipes().forEach(r -> {
+// Recipe recipe = new Recipe("Rewrite: " + r.getDisplayName(), r.getDescription(), Condition.TRUE, List.of(new OpenRewriteRecipeAdapterAction(r)));
+// recipeList.add(recipe);
+// });
return recipeList;
}
@@ -51,4 +51,4 @@ public org.openrewrite.Recipe loadRewriteRecipe(String recipeName) {
.filter(r -> r.getName().equals(recipeName)).findFirst()
.orElseThrow(() -> new IllegalArgumentException(String.format("Could not find OpenRewrite recipe with name '%s'", recipeName)));
}
-}
\ No newline at end of file
+}
diff --git a/components/sbm-recipes-boot-upgrade/pom.xml b/components/sbm-recipes-boot-upgrade/pom.xml
index df0984bb7..a4a65b0db 100644
--- a/components/sbm-recipes-boot-upgrade/pom.xml
+++ b/components/sbm-recipes-boot-upgrade/pom.xml
@@ -51,7 +51,11 @@
org.springframework.boot
spring-boot-starter-freemarker
-
+
+ org.openrewrite.recipe
+ rewrite-migrate-java
+ 1.8.0
+
org.springframework.boot
spring-boot-starter-test
diff --git a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/HasSpringBootParentOfVersion.java b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/HasSpringBootParentOfVersion.java
similarity index 96%
rename from components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/HasSpringBootParentOfVersion.java
rename to components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/HasSpringBootParentOfVersion.java
index a4c5c6566..7c94fafb0 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/HasSpringBootParentOfVersion.java
+++ b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/HasSpringBootParentOfVersion.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.springframework.sbm.boot.upgrade_24_25.conditions;
+package org.springframework.sbm.boot.upgrade.common.conditions;
import lombok.Getter;
import lombok.Setter;
diff --git a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/IsAnyMatchingSpringBootVersion.java b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/IsAnyMatchingSpringBootVersion.java
similarity index 90%
rename from components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/IsAnyMatchingSpringBootVersion.java
rename to components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/IsAnyMatchingSpringBootVersion.java
index 1d9c7a789..cd274b132 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/IsAnyMatchingSpringBootVersion.java
+++ b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/IsAnyMatchingSpringBootVersion.java
@@ -13,11 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.springframework.sbm.boot.upgrade_24_25.conditions;
+package org.springframework.sbm.boot.upgrade.common.conditions;
-import lombok.Setter;
import org.jetbrains.annotations.NotNull;
-import org.springframework.sbm.build.migration.conditions.AnyDependencyExistMatchingRegex;
import org.springframework.sbm.engine.context.ProjectContext;
import org.springframework.sbm.engine.recipe.Condition;
diff --git a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/IsMatchingSpringBootVersion.java b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/IsMatchingSpringBootVersion.java
similarity index 94%
rename from components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/IsMatchingSpringBootVersion.java
rename to components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/IsMatchingSpringBootVersion.java
index 76eaaac94..600918e14 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/conditions/IsMatchingSpringBootVersion.java
+++ b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade/common/conditions/IsMatchingSpringBootVersion.java
@@ -13,13 +13,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.springframework.sbm.boot.upgrade_24_25.conditions;
+package org.springframework.sbm.boot.upgrade.common.conditions;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.jetbrains.annotations.NotNull;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.sbm.build.migration.conditions.AnyDependencyExistMatchingRegex;
import org.springframework.sbm.engine.context.ProjectContext;
import org.springframework.sbm.engine.recipe.Condition;
diff --git a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/report/Boot_24_25_UpdateDependencies.java b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/report/Boot_24_25_UpdateDependencies.java
index d6866d7bd..58bdee543 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/report/Boot_24_25_UpdateDependencies.java
+++ b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_24_25/report/Boot_24_25_UpdateDependencies.java
@@ -20,7 +20,7 @@
import org.springframework.sbm.boot.asciidoctor.RelevantChangeSection;
import org.springframework.sbm.boot.asciidoctor.Section;
import org.springframework.sbm.boot.asciidoctor.TodoList;
-import org.springframework.sbm.boot.upgrade_24_25.conditions.HasSpringBootParentOfVersion;
+import org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion;
import org.springframework.sbm.engine.context.ProjectContext;
import org.springframework.sbm.build.impl.OpenRewriteMavenBuildFile;
import org.springframework.stereotype.Component;
diff --git a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/SamlRelyingPartyPropertyApplicationPropertiesMove.java b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/SamlRelyingPartyPropertyApplicationPropertiesMove.java
new file mode 100644
index 000000000..1956547c4
--- /dev/null
+++ b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/SamlRelyingPartyPropertyApplicationPropertiesMove.java
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2021 - 2022 the original author or authors.
+ *
+ * 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.
+ */
+package org.springframework.sbm.boot.upgrade_27_30;
+
+import org.jetbrains.annotations.NotNull;
+import org.openrewrite.ExecutionContext;
+import org.openrewrite.Recipe;
+import org.openrewrite.TreeVisitor;
+import org.openrewrite.properties.PropertiesVisitor;
+import org.openrewrite.properties.tree.Properties;
+
+public class SamlRelyingPartyPropertyApplicationPropertiesMove extends Recipe {
+ private final static String REGEX_PATTERN = "(spring\\.security\\.saml2\\.relyingparty\\.registration\\..*)(\\.identityprovider)(.*)";
+
+ @Override
+ public String getDisplayName() {
+ return "Move SAML relying party identity provider property to asserting party";
+ }
+
+ @Override
+ public String getDescription() {
+ return "Renames spring.security.saml2.relyingparty.registration.(any).identityprovider to " +
+ "spring.security.saml2.relyingparty.registration.(any).assertingparty.";
+ }
+
+ @Override
+ protected TreeVisitor, ExecutionContext> getVisitor() {
+
+ return new PropertiesVisitor() {
+
+ @Override
+ public Properties visitEntry(Properties.Entry entry, ExecutionContext executionContext) {
+
+ if (entry.getKey().matches(REGEX_PATTERN)) {
+ return super.visitEntry(updateEntry(entry), executionContext);
+ }
+
+ return super.visitEntry(entry, executionContext);
+ }
+
+ @NotNull
+ private Properties.Entry updateEntry(Properties.Entry entry) {
+ return entry.withKey(entry.getKey().replaceAll(REGEX_PATTERN, "$1.assertingparty$3"));
+ }
+ };
+ }
+}
diff --git a/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-dependency-version-update.yaml b/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-dependency-version-update.yaml
index d08166f76..e390a6938 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-dependency-version-update.yaml
+++ b/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-dependency-version-update.yaml
@@ -1,11 +1,11 @@
- name: boot-2.4-2.5-dependency-version-update
description: Update Spring Boot dependencies from 2.4 to 2.5
condition:
- type: org.springframework.sbm.boot.upgrade_24_25.conditions.HasSpringBootParentOfVersion
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
versionStartingWith: "2.4."
actions:
- type: org.springframework.sbm.boot.upgrade_24_25.actions.Boot_24_25_UpdateDependenciesAction
description: Update Spring Boot dependencies from 2.4 to 2.5
condition:
- type: org.springframework.sbm.boot.upgrade_24_25.conditions.HasSpringBootParentOfVersion
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
versionStartingWith: "2.4."
\ No newline at end of file
diff --git a/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-upgrade-report.yaml b/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-upgrade-report.yaml
index 512c0ee4e..5bd789aa5 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-upgrade-report.yaml
+++ b/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.4-2.5-upgrade-report.yaml
@@ -1,7 +1,7 @@
- name: boot-2.4-2.5-upgrade-report
description: Create Upgrade Report for a Spring Boot 2.4 Application
condition:
- type: org.springframework.sbm.boot.upgrade_24_25.conditions.IsAnyMatchingSpringBootVersion
+ type: org.springframework.sbm.boot.upgrade.common.conditions.IsAnyMatchingSpringBootVersion
versionPatterns: 2.4.,2.5.
actions:
- type: org.springframework.sbm.boot.upgrade_24_25.actions.Boot_24_25_UpgradeReportAction
diff --git a/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.7-3.0-dependency-version-update.yaml b/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.7-3.0-dependency-version-update.yaml
index c91bee673..82b197c39 100644
--- a/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.7-3.0-dependency-version-update.yaml
+++ b/components/sbm-recipes-boot-upgrade/src/main/resources/recipes/boot-2.7-3.0-dependency-version-update.yaml
@@ -6,6 +6,7 @@
actions:
+ # TODO: upgrades for 2.7
- type: org.springframework.sbm.build.migration.actions.AddRepositoryAction
description: Add Spring Boot milestone repository.
id: "spring-milestone"
@@ -16,33 +17,553 @@
id: "spring-milestone"
url: "https://repo.spring.io/milestone"
- - type: org.springframework.sbm.build.migration.actions.BumpParentPomVersion
- groupId: org.springframework.boot
- artifactId: spring-boot-starter-parent
- toVersion: 3.0.0-M3
- description: Bump spring-boot-starter-parent from 2.7.x to 3.0.0-M3
- condition:
- type: org.springframework.sbm.boot.common.conditions.HasSpringBootStarterParent
- versionPattern: "2\\.7\\..*"
-
- - type: org.springframework.sbm.boot.upgrade.common.actions.ReplaceJavaxWithJakartaAction
- javaxPackagePatterns:
- - javax.persistence
- - javax.naming
- - javax.validation
- - javax.servlet
- description: Replace relevant 'javax' packages with their new 'jakarta' replacement
- condition:
- type: org.springframework.sbm.java.migration.conditions.HasAnyImportStartingWith
- importPatterns:
- - javax.persistence
- - javax.naming
- - javax.validation
- - javax.servlet
-
- - type: org.springframework.sbm.build.migration.actions.SetProperty
- propertyName: "java.version"
- propertyValue: "17"
- description: Set Java version to 17
- condition:
- type: org.springframework.sbm.common.migration.conditions.TrueCondition
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteDeclarativeRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "2.7."
+ description: Add Spring Milestone Repository and bump parent pom to 3.0.0-M3
+ openRewriteRecipe: |-
+ type: specs.openrewrite.org/v1beta/recipe
+ name: org.openrewrite.java.spring.boot3.data.TEST
+ displayName: Upgrade to Spring Data 3.0
+ description: 'Upgrade to Spring Data to 3.0 from any prior version.'
+ recipeList:
+ - org.openrewrite.maven.UpgradeParentVersion:
+ groupId: org.springframework.boot
+ artifactId: spring-boot-starter-parent
+ newVersion: 3.0.0-M3
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteDeclarativeRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "3.0."
+ description: Move micrometer packages
+ openRewriteRecipe: |-
+ type: specs.openrewrite.org/v1beta/recipe
+ name: org.openrewrite.java.spring.boot3.Micrometer_3_0
+ displayName: Micrometer compatible with Boot 3.x
+ description: Switch to Micrometer compatible with Boot 3.x
+ recipeList:
+ - org.openrewrite.java.ChangePackage:
+ oldPackageName: io.micrometer.core.instrument.binder
+ newPackageName: io.micrometer.binder
+ recursive: true
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteDeclarativeRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "3.0."
+ description: Migrate SAML configuration to Spring Boot 3.0 in yaml format
+ openRewriteRecipe: |-
+ type: specs.openrewrite.org/v1beta/recipe
+ name: org.openrewrite.java.spring.boot2.SpringBootPropertiesManual_2_7
+ displayName: Migrate SAML configuration to Spring Boot 3.0 in yaml format
+ description: Renames spring.security.saml2.relyingparty.registration.(any).identityprovider to spring.security.saml2.relyingparty.registration.(any).assertingparty.
+ recipeList:
+ - org.openrewrite.yaml.ChangeKey:
+ oldKeyPath: $.spring.security.saml2.relyingparty.registration.*[?(@.identityprovider)]
+ newKey: assertingparty
+
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteDeclarativeRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "3.0."
+ description: Migrate SAML configuration to Spring Boot 3.0 in properties format
+ openRewriteRecipe: |-
+ type: specs.openrewrite.org/v1beta/recipe
+ name: org.openrewrite.java.spring.boot2.SpringBootPropertiesManual_2_7
+ displayName: Migrate SAML properties to Spring Boot 3.0 in properties
+ description: Renames spring.security.saml2.relyingparty.registration.(any).identityprovider to spring.security.saml2.relyingparty.registration.(any).assertingparty.
+ recipeList:
+ - org.springframework.sbm.boot.upgrade_27_30.SamlRelyingPartyPropertyApplicationPropertiesMove
+
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteDeclarativeRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "3.0."
+ description: Remove redundant @ConstructorBinding annotations when applicable
+ openRewriteRecipe: |-
+ type: specs.openrewrite.org/v1beta/recipe
+ name: org.openrewrite.java.spring.boot3.ImprovedConstructorBinding
+ displayName: Migrate additional Spring Boot properties to 2.7
+ description: Remove redundant @ConstructorBinding annotations when applicable
+ recipeList:
+ - org.openrewrite.java.spring.boot3.RemoveConstructorBindingAnnotation
+
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteNamedRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "3.0."
+ description: Replace javax with new jakarta packages
+ openRewriteRecipeName: org.openrewrite.java.migrate.JavaxMigrationToJakarta
+
+ - type: org.springframework.sbm.engine.recipe.OpenRewriteDeclarativeRecipeAdapter
+ condition:
+ type: org.springframework.sbm.boot.upgrade.common.conditions.HasSpringBootParentOfVersion
+ versionStartingWith: "3.0."
+ description: Migrate configuration to SpringBoot 3.0 in properties format
+ openRewriteRecipe: |-
+ type: specs.openrewrite.org/v1beta/recipe
+ name: org.openrewrite.java.spring.boot2.SpringBootPropertiesManual_2_7
+ displayName: Migrate configuration to Spring Boot 3.0 in properties format
+ description: All relevant configurations in property format will be migrated to SpringBoot 3.0 properties
+ recipeList:
+ # update properties
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.connection-timeout
+ newPropertyKey: spring.elasticsearch.connection-timeout
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.connection-timeout
+ newPropertyKey: spring.elasticsearch.connection-timeout
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.max-in-memory-size
+ newPropertyKey: spring.elasticsearch.webclient.max-in-memory-size
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.max-in-memory-size
+ newPropertyKey: spring.elasticsearch.webclient.max-in-memory-size
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.password
+ newPropertyKey: spring.elasticsearch.password
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.password
+ newPropertyKey: spring.elasticsearch.password
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.socket-timeout
+ newPropertyKey: spring.elasticsearch.socket-timeout
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.socket-timeout
+ newPropertyKey: spring.elasticsearch.socket-timeout
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.username
+ newPropertyKey: spring.elasticsearch.username
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.data.elasticsearch.client.reactive.username
+ newPropertyKey: spring.elasticsearch.username
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.continue-on-error
+ newPropertyKey: spring.sql.init.continue-on-error
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.continue-on-error
+ newPropertyKey: spring.sql.init.continue-on-error
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.data
+ newPropertyKey: spring.sql.init.data-locations
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.data
+ newPropertyKey: spring.sql.init.data-locations
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.data-password
+ newPropertyKey: spring.sql.init.password
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.data-password
+ newPropertyKey: spring.sql.init.password
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.data-username
+ newPropertyKey: spring.sql.init.username
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.data-username
+ newPropertyKey: spring.sql.init.username
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.initialization-mode
+ newPropertyKey: spring.sql.init.mode
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.initialization-mode
+ newPropertyKey: spring.sql.init.mode
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.platform
+ newPropertyKey: spring.sql.init.platform
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.platform
+ newPropertyKey: spring.sql.init.platform
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.schema
+ newPropertyKey: spring.sql.init.schema-locations
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.schema
+ newPropertyKey: spring.sql.init.schema-locations
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.schema-password
+ newPropertyKey: spring.sql.init.password
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.schema-password
+ newPropertyKey: spring.sql.init.password
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.schema-username
+ newPropertyKey: spring.sql.init.username
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.schema-username
+ newPropertyKey: spring.sql.init.username
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.separator
+ newPropertyKey: spring.sql.init.separator
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.separator
+ newPropertyKey: spring.sql.init.separator
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.sql-script-encoding
+ newPropertyKey: spring.sql.init.encoding
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.datasource.sql-script-encoding
+ newPropertyKey: spring.sql.init.encoding
+
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.connection-timeout
+ newPropertyKey: spring.elasticsearch.connection-timeout
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.connection-timeout
+ newPropertyKey: spring.elasticsearch.connection-timeout
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.password
+ newPropertyKey: spring.elasticsearch.password
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.password
+ newPropertyKey: spring.elasticsearch.password
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.read-timeout
+ newPropertyKey: spring.elasticsearch.socket-timeout
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.read-timeout
+ newPropertyKey: spring.elasticsearch.socket-timeout
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.sniffer.delay-after-failure
+ newPropertyKey: spring.elasticsearch.restclient.sniffer.delay-after-failure
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.sniffer.delay-after-failure
+ newPropertyKey: spring.elasticsearch.restclient.sniffer.delay-after-failure
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.sniffer.interval
+ newPropertyKey: spring.elasticsearch.restclient.sniffer.interval
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.sniffer.interval
+ newPropertyKey: spring.elasticsearch.restclient.sniffer.interval
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.username
+ newPropertyKey: spring.elasticsearch.username
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.elasticsearch.rest.username
+ newPropertyKey: spring.elasticsearch.username
+ - org.openrewrite.yaml.ChangePropertyKey:
+ oldPropertyKey: spring.webflux.session.cookie.same-site
+ newPropertyKey: server.reactive.session.cookie.same-site
+ - org.openrewrite.properties.ChangePropertyKey:
+ oldPropertyKey: spring.webflux.session.cookie.same-site
+ newPropertyKey: server.reactive.session.cookie.same-site
+ # remove properties
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: management.endpoint.jolokia.config
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: management.endpoint.jolokia.config
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: management.endpoint.jolokia.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: management.endpoint.jolokia.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: management.metrics.graphql.autotime.percentiles
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: management.metrics.graphql.autotime.percentiles
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: management.metrics.graphql.autotime.percentiles-histogram
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: management.metrics.graphql.autotime.percentiles-histogram
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.broker-url
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.broker-url
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.close-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.close-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.in-memory
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.in-memory
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.non-blocking-redelivery
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.non-blocking-redelivery
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.packages.trust-all
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.packages.trust-all
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.packages.trusted
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.packages.trusted
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.password
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.password
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.block-if-full
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.block-if-full
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.block-if-full-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.block-if-full-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.idle-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.idle-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.max-connections
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.max-connections
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.max-sessions-per-connection
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.max-sessions-per-connection
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.time-between-expiration-check
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.time-between-expiration-check
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.pool.use-anonymous-producers
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.pool.use-anonymous-producers
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.send-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.send-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.activemq.user
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.activemq.user
+
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.block-if-full
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.block-if-full
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.block-if-full-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.block-if-full-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.idle-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.idle-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.max-connections
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.max-connections
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.max-sessions-per-connection
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.max-sessions-per-connection
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.time-between-expiration-check
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.time-between-expiration-check
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.artemis.pool.use-anonymous-producers
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.artemis.pool.use-anonymous-producers
+
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.cache.ehcache.config
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.cache.ehcache.config
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.cache.infinispan.config
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.cache.infinispan.config
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.config.use-legacy-processing
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.config.use-legacy-processing
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.data.elasticsearch.client.reactive.use-ssl
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.data.elasticsearch.client.reactive.use-ssl
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.h2.console.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.h2.console.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.h2.console.path
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.h2.console.path
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.h2.console.settings.trace
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.h2.console.settings.trace
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.h2.console.settings.web-admin-password
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.h2.console.settings.web-admin-password
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.h2.console.settings.web-allow-others
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.h2.console.settings.web-allow-others
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jersey.application-path
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jersey.application-path
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jersey.filter.order
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jersey.filter.order
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jersey.init
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jersey.init
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jersey.servlet.load-on-startup
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jersey.servlet.load-on-startup
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jersey.type
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jersey.type
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.allow-credentials
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.allow-credentials
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-headers
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-headers
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-methods
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-methods
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-origin-patterns
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-origin-patterns
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-origins
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.allowed-origins
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.exposed-headers
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.exposed-headers
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.cors.max-age
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.cors.max-age
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.graphiql.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.graphiql.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.graphiql.path
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.graphiql.path
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.path
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.path
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.schema.file-extensions
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.schema.file-extensions
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.schema.introspection.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.schema.introspection.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.schema.locations
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.schema.locations
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.schema.printer.enabled
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.schema.printer.enabled
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.websocket.connection-init-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.websocket.connection-init-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.graphql.websocket.path
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.graphql.websocket.path
+
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.allow-sub-transactions
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.allow-sub-transactions
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.checkpoint-interval
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.checkpoint-interval
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.default-jta-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.default-jta-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.default-max-wait-time-on-shutdown
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.default-max-wait-time-on-shutdown
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.enable-logging
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.enable-logging
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.force-shutdown-on-vm-exit
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.force-shutdown-on-vm-exit
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.log-base-dir
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.log-base-dir
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.log-base-name
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.log-base-name
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.max-actives
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.max-actives
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.max-timeout
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.max-timeout
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.delay
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.delay
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.forget-orphaned-log-entries-delay
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.forget-orphaned-log-entries-delay
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.max-retries
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.max-retries
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.retry-interval
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.recovery.retry-interval
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.serial-jta-transactions
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.serial-jta-transactions
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.service
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.service
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.threaded-two-phase-commit
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.threaded-two-phase-commit
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.transaction-manager-unique-name
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.atomikos.properties.transaction-manager-unique-name
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.transaction-manager-id
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.transaction-manager-id
+ - org.openrewrite.yaml.DeleteProperty:
+ propertyKey: spring.jta.log-dir
+ - org.openrewrite.properties.DeleteProperty:
+ propertyKey: spring.jta.log-dir
+
diff --git a/spring-boot-upgrade-30/src/test/resources/META-INF/rewrite/recipie.yml b/spring-boot-upgrade-30/src/test/resources/META-INF/rewrite/recipie.yml
index 760324b2e..afb0c9ae4 100644
--- a/spring-boot-upgrade-30/src/test/resources/META-INF/rewrite/recipie.yml
+++ b/spring-boot-upgrade-30/src/test/resources/META-INF/rewrite/recipie.yml
@@ -46,140 +46,140 @@ name: org.openrewrite.java.spring.boot3.SpringBootPropertiesManual_2_7
displayName: Upgrade to Spring Data 3.0
description: 'Rename properties'
recipeList:
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.connection-timeout
newPropertyKey: spring.elasticsearch.connection-timeout
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.connection-timeout
newPropertyKey: spring.elasticsearch.connection-timeout
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.max-in-memory-size
newPropertyKey: spring.elasticsearch.webclient.max-in-memory-size
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.max-in-memory-size
newPropertyKey: spring.elasticsearch.webclient.max-in-memory-size
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.password
newPropertyKey: spring.elasticsearch.password
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.password
newPropertyKey: spring.elasticsearch.password
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.socket-timeout
newPropertyKey: spring.elasticsearch.socket-timeout
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.socket-timeout
newPropertyKey: spring.elasticsearch.socket-timeout
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.username
newPropertyKey: spring.elasticsearch.username
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.data.elasticsearch.client.reactive.username
newPropertyKey: spring.elasticsearch.username
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.continue-on-error
newPropertyKey: spring.sql.init.continue-on-error
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.continue-on-error
newPropertyKey: spring.sql.init.continue-on-error
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.data
newPropertyKey: spring.sql.init.data-locations
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.data
newPropertyKey: spring.sql.init.data-locations
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.data-password
newPropertyKey: spring.sql.init.password
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.data-password
newPropertyKey: spring.sql.init.password
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.data-username
newPropertyKey: spring.sql.init.username
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.data-username
newPropertyKey: spring.sql.init.username
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.initialization-mode
newPropertyKey: spring.sql.init.mode
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.initialization-mode
newPropertyKey: spring.sql.init.mode
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.platform
newPropertyKey: spring.sql.init.platform
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.platform
newPropertyKey: spring.sql.init.platform
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.schema
newPropertyKey: spring.sql.init.schema-locations
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.schema
newPropertyKey: spring.sql.init.schema-locations
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.schema-password
newPropertyKey: spring.sql.init.password
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.schema-password
newPropertyKey: spring.sql.init.password
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.schema-username
newPropertyKey: spring.sql.init.username
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.schema-username
newPropertyKey: spring.sql.init.username
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.separator
newPropertyKey: spring.sql.init.separator
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.separator
newPropertyKey: spring.sql.init.separator
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.datasource.sql-script-encoding
newPropertyKey: spring.sql.init.encoding
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.datasource.sql-script-encoding
newPropertyKey: spring.sql.init.encoding
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.connection-timeout
newPropertyKey: spring.elasticsearch.connection-timeout
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.connection-timeout
newPropertyKey: spring.elasticsearch.connection-timeout
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.password
newPropertyKey: spring.elasticsearch.password
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.password
newPropertyKey: spring.elasticsearch.password
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.read-timeout
newPropertyKey: spring.elasticsearch.socket-timeout
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.read-timeout
newPropertyKey: spring.elasticsearch.socket-timeout
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.sniffer.delay-after-failure
newPropertyKey: spring.elasticsearch.restclient.sniffer.delay-after-failure
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.sniffer.delay-after-failure
newPropertyKey: spring.elasticsearch.restclient.sniffer.delay-after-failure
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.sniffer.interval
newPropertyKey: spring.elasticsearch.restclient.sniffer.interval
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.sniffer.interval
newPropertyKey: spring.elasticsearch.restclient.sniffer.interval
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.username
newPropertyKey: spring.elasticsearch.username
- org.openrewrite.properties.ChangePropertyKey:
oldPropertyKey: spring.elasticsearch.rest.username
newPropertyKey: spring.elasticsearch.username
- - org.openrewrite.java.spring.boot3.ChangePropertyKey:
+ - org.openrewrite.yaml.ChangePropertyKey:
oldPropertyKey: spring.webflux.session.cookie.same-site
newPropertyKey: server.reactive.session.cookie.same-site
- org.openrewrite.properties.ChangePropertyKey:
@@ -520,3 +520,4 @@ recipeList:
oldPackageName: io.micrometer.core.instrument.binder
newPackageName: io.micrometer.binder
recursive: true
+---