Update Spring Cloud Contract coordinates to Stubborn Contract
Recipe ID
sh.stubborn.contract.migration.UpdateDependenciesArtifactorg.openrewrite.recipe:rewrite-third-partyReplaces org.springframework.cloud:spring-cloud-contract-* GAVs with sh.stubborn:stubborn-* equivalents, migrates the spring-cloud-contract-dependencies BOM, and swaps both build plugins, in Maven and Gradle builds alike. The com.toomuchcoding JSON/XML assertion coordinates are swapped alongside the sh.stubborn.jsonassert / sh.stubborn.xmlassert package renames. Every coordinate is repinned to latest.release.
Composite recipegradlespring-cloud-contractstubborn-contractApache 2.0
Usage
This recipe has no required configuration options. You’ll need the Moderne CLI configured before running the command below.
mod run . --recipe sh.stubborn.contract.migration.UpdateDependenciesIf the recipe isn’t available locally, install it with:
mod config recipes jar install org.openrewrite.recipe:rewrite-third-party:RELEASEDefinition
This recipe runs the following recipes in order.
- Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-verifierorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-stub-runnerorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-starter-contract-verifierorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-starter-contract-stub-runnerorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-starter-contract-stub-runner-jettyorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-wiremockorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-convertersorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-specorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-spec-javaorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-spec-groovyorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-spec-kotlinorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
com.toomuchcoding.jsonassert:jsonassertorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
com.toomuchcoding.xmlassert:xmlassertorg.openrewrite.java.dependencies.ChangeDependency - Change Gradle or Maven dependency
org.springframework.cloud:spring-cloud-contract-dependenciesorg.openrewrite.java.dependencies.ChangeDependency - Change Maven plugin group and artifact ID
sh.stubborn:stubborn-contract-maven-pluginorg.openrewrite.maven.ChangePluginGroupIdAndArtifactId - Change a Gradle plugin
org.springframework.cloud.contracttosh.stubborn.contractorg.openrewrite.gradle.plugins.ChangePlugin
Data tables
Structured output this recipe can produce.
- Maven metadata failuresAttempts to resolve maven metadata that failed.
org.openrewrite.maven.table.MavenMetadataFailures - Source files that had resultsSource files that were modified by the recipe run.
org.openrewrite.table.SourcesFileResults - Source files that had search resultsSearch results that were found during the recipe run.
org.openrewrite.table.SearchResults - Source files that errored on a recipeThe details of all errors produced by a recipe run.
org.openrewrite.table.SourcesFileErrors - Recipe performanceStatistics used in analyzing the performance of recipes.
org.openrewrite.table.RecipeRunStats