Skip to content

Commit df9fec7

Browse files
committed
Fix settings.xml server configuration being ignored, potentially leading to missing HTTP headers failing dependency resolution requests
1 parent c73e999 commit df9fec7

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/main/java/org/openrewrite/maven/MavenMojoProjectParser.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
*/
1616
package org.openrewrite.maven;
1717

18+
import com.fasterxml.jackson.core.JsonProcessingException;
1819
import org.apache.maven.artifact.DependencyResolutionRequiredException;
1920
import org.apache.maven.execution.MavenExecutionRequest;
2021
import org.apache.maven.execution.MavenSession;
@@ -46,6 +47,7 @@
4647
import org.openrewrite.marker.ci.BuildEnvironment;
4748
import org.openrewrite.maven.cache.InMemoryMavenPomCache;
4849
import org.openrewrite.maven.cache.MavenPomCache;
50+
import org.openrewrite.maven.internal.MavenXmlMapper;
4951
import org.openrewrite.maven.internal.RawPom;
5052
import org.openrewrite.maven.internal.RawRepositories;
5153
import org.openrewrite.maven.tree.Pom;
@@ -731,11 +733,20 @@ public MavenSettings buildSettings() {
731733
servers.setServers(mer.getServers().stream().map(s -> {
732734
SettingsDecryptionRequest decryptionRequest = new DefaultSettingsDecryptionRequest(s);
733735
SettingsDecryptionResult decryptionResult = settingsDecrypter.decrypt(decryptionRequest);
736+
MavenSettings.ServerConfiguration configuration = null;
737+
if (s.getConfiguration() != null) {
738+
try {
739+
// No need to interpolate in property placeholders like ${env.Foo}, Maven has already done this
740+
configuration = MavenXmlMapper.readMapper().readValue(s.getConfiguration().toString(), MavenSettings.ServerConfiguration.class);
741+
} catch (JsonProcessingException e) {
742+
throw new RuntimeException(e);
743+
}
744+
}
734745
return new MavenSettings.Server(
735746
s.getId(),
736747
s.getUsername(),
737748
decryptionResult.getServer().getPassword(),
738-
null
749+
configuration
739750
);
740751
}).collect(toList()));
741752

0 commit comments

Comments
 (0)