Dynamically populate repositories used in Ant/Maven integration tests

Update build scripts and tests so that repository settings are copied
dynamically from the build.

See gh-42333
This commit is contained in:
Phillip Webb
2024-09-27 17:31:31 -07:00
parent 7d8507d186
commit d44e7c9af2
10 changed files with 131 additions and 26 deletions

View File

@@ -28,6 +28,7 @@ dependencies {
task copyIntegrationTestSources(type: Copy) {
from file("src/it")
into "${buildDir}/it"
filter(springRepoistoryTransformers.ant())
}
processResources {

View File

@@ -8,8 +8,8 @@
<ivy pattern="${user.home}/.m2/[organisation]/[module]/[revision]/[module]-[revision].pom" />
</filesystem>
<ibiblio name="ibiblio" m2compatible="true" />
<ibiblio name="spring-milestones" m2compatible="true" root="https://repo.spring.io/milestone" />
<ibiblio name="spring-snapshots" m2compatible="true" root="https://repo.spring.io/snapshot" />
<!-- {spring.mavenRepositories} -->
</chain>
</resolvers>
</ivysettings>

View File

@@ -99,12 +99,18 @@ syncDocumentationSourceForAsciidoctor {
}
}
task copySettingsXml(type: Copy) {
from file("src/intTest/projects/settings.xml")
into "${buildDir}/generated-resources/settings"
filter(springRepoistoryTransformers.mavenSettings())
}
sourceSets {
main {
output.dir("${buildDir}/generated/resources/xsd", builtBy: "xsdResources")
}
intTest {
output.dir("${buildDir}/generated-resources", builtBy: "extractVersionProperties")
output.dir("${buildDir}/generated-resources", builtBy: ["extractVersionProperties", "copySettingsXml"])
}
dockerTest {
output.dir("${buildDir}/generated-resources", builtBy: "extractVersionProperties")

View File

@@ -160,7 +160,7 @@ class MavenBuild {
}
});
String settingsXml = Files.readString(Paths.get("src", "intTest", "projects", "settings.xml"))
String settingsXml = Files.readString(Paths.get("build", "generated-resources", "settings", "settings.xml"))
.replace("@localCentralUrl@", new File("build/test-maven-repository").toURI().toURL().toString())
.replace("@localRepositoryPath@", new File("build/local-maven-repository").getAbsolutePath());
Files.writeString(destination.resolve("settings.xml"), settingsXml, StandardOpenOption.CREATE_NEW);

View File

@@ -18,19 +18,7 @@
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
</repository>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<!-- {spring.mavenRepositories} -->
</repositories>
<pluginRepositories>
<pluginRepository>
@@ -43,11 +31,7 @@
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
</pluginRepository>
<!-- {spring.mavenRepositories} -->
</pluginRepositories>
</profile>
</profiles>