Migrate flyway and liquibase credentials
org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials If you currently define a
spring.flyway.url
or spring.liquibase.url
you may need to provide additional username and password properties. In earlier versions of Spring Boot, these settings were derived from spring.datasource
properties but this turned out to be problematic for people that provided their own DataSource
beans.- groupId: org.openrewrite.recipe
- artifactId: rewrite-spring
- version: 4.34.0
This recipe has no required configuration options. It can be activated by adding a dependency on
org.openrewrite.recipe:rewrite-spring:4.34.0
in your build file or by running a shell command (in which case no build changes are needed):Gradle
Maven POM
Maven Command Line
build.gradle
plugins {
id("org.openrewrite.rewrite") version("5.38.0")
}
rewrite {
activeRecipe("org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials")
}
repositories {
mavenCentral()
}
dependencies {
rewrite("org.openrewrite.recipe:rewrite-spring:4.34.0")
}
pom.xml
<project>
<build>
<plugins>
<plugin>
<groupId>org.openrewrite.maven</groupId>
<artifactId>rewrite-maven-plugin</artifactId>
<version>4.42.0</version>
<configuration>
<activeRecipes>
<recipe>org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials</recipe>
</activeRecipes>
</configuration>
<dependencies>
<dependency>
<groupId>org.openrewrite.recipe</groupId>
<artifactId>rewrite-spring</artifactId>
<version>4.34.0</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>
shell
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run \
-Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-spring:LATEST \
-Drewrite.activeRecipes=org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials
Recipe List
Yaml Recipe List
---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials
displayName: Migrate flyway and liquibase credentials
description: If you currently define a `spring.flyway.url` or `spring.liquibase.url` you may need to provide additional username and password properties. In earlier versions of Spring Boot, these settings were derived from `spring.datasource` properties but this turned out to be problematic for people that provided their own `DataSource` beans.
recipeList:
- org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials$MigrateDatabaseCredentialsForToolYaml
- org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials$MigrateDatabaseCredentialsForToolProperties
- org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials$MigrateDatabaseCredentialsForToolYaml
- org.openrewrite.java.spring.boot2.MigrateDatabaseCredentials$MigrateDatabaseCredentialsForToolProperties