resolvePropertiesInYaml does not respect Maven user properties (-D...) (original) (raw)

What version of OpenRewrite are you using?

Maven plugin v6.18.0

How are you running OpenRewrite?

I am using the Maven plugin, and my project is a single module project.

org.openrewrite.maven rewrite-maven-plugin 6.18.0 true

What is the smallest, simplest way to reproduce the problem?

Command line:

mvn rewrite:runNoFork -Drewrite.activeRecipes=Example -DnewValue=new

rewrite.yml:

type: specs.openrewrite.org/v1beta/recipe name: Example displayName: Example recipeList:

What did you expect to see?

<properties>
    <someProperty>new</someProperty>
</properties>

What did you see instead?

<properties>
    <someProperty>${newValue}</someProperty>
</properties>

What is the full stack trace of any errors you encountered?

n/a

Are you interested in contributing a fix to OpenRewrite?

Yes, I already have a local fix but I have yet to take a look at how to write a test for it.

Patch:

diff --git a/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java b/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java index 567a5ac..60ecc84 100644 --- a/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java +++ b/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java @@ -40,6 +40,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.*; +import java.util.Map.Entry;

import static java.util.Collections.sort;

@@ -107,7 +108,20 @@ public abstract class AbstractRewriteMojo extends ConfigurableRewriteMojo { }

 protected Environment environment(@Nullable ClassLoader recipeClassLoader) throws MojoExecutionException {