Skip to content

Isolate Maven Plugin integration tests from repo.spring.io #22828

Closed
@wilkinsona

Description

@wilkinsona

The Maven plugin integration tests currently use a settings.xml file that defines https://repo.spring.io/snapshot as a repository. This is to allow them to resolve snapshots of the plugin's Spring Framework dependencies but it has the unfortunate side-effect of also allowing them to resolve snapshots of other Spring Boot modules from Artifactory rather than using those currently being built. Furthermore, this resolution fails from time-to-time if it is attempted while a deployment is in progress. Doing so can result in a module's jar being found but its pom being absent. This results in a test failure with output similar to the following:

[INFO] --- spring-boot-maven-plugin:2.4.0-SNAPSHOT:run (default-cli) @ run-jvmargs ---	
[INFO] Downloading from local.central: file:/tmp/build/6da1d659/git-repo/spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build/int-test-maven-repository/org/springframework/boot/spring-boot-maven-plugin/2.4.0-SNAPSHOT/spring-boot-maven-plugin-2.4.0-20200807.110157-312.pom	
[INFO] Downloading from spring-snapshot: https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-maven-plugin/2.4.0-SNAPSHOT/spring-boot-maven-plugin-2.4.0-20200807.110157-312.pom	
[WARNING] The POM for org.springframework.boot:spring-boot-maven-plugin:jar:2.4.0-20200807.110157-312 is missing, no dependency information available	
[INFO] Downloading from local.central: file:/tmp/build/6da1d659/git-repo/spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build/int-test-maven-repository/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar	
[INFO] Downloading from spring-milestone: https://repo.spring.io/milestone/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar	
[INFO] Downloading from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar	
[INFO] Downloaded from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar (169 kB at 2.3 MB/s)

Note the warning about the missing pom file. This failure occurred at 11:01:59. Looking at the directory listing from the repository, the module's jar was deployed at 11:01 but the pom was not deployed until 11:02:

../
maven-metadata.xml                                               07-Aug-2020 11:10  1.38 KB
spring-boot-maven-plugin-2.4.0-20200807.094922-311-javadoc.jar   07-Aug-2020 09:49  137.44 KB
spring-boot-maven-plugin-2.4.0-20200807.094922-311-sources.jar   07-Aug-2020 09:49  54.09 KB
spring-boot-maven-plugin-2.4.0-20200807.094922-311.jar           07-Aug-2020 09:49  91.56 KB
spring-boot-maven-plugin-2.4.0-20200807.094922-311.module        07-Aug-2020 09:49  4.57 KB
spring-boot-maven-plugin-2.4.0-20200807.094922-311.pom           07-Aug-2020 09:49  2.87 KB
spring-boot-maven-plugin-2.4.0-20200807.110157-312-javadoc.jar   07-Aug-2020 11:02  137.44 KB
spring-boot-maven-plugin-2.4.0-20200807.110157-312-sources.jar   07-Aug-2020 11:02  54.09 KB
spring-boot-maven-plugin-2.4.0-20200807.110157-312.jar           07-Aug-2020 11:01  91.56 KB
spring-boot-maven-plugin-2.4.0-20200807.110157-312.module        07-Aug-2020 11:01  4.57 KB
spring-boot-maven-plugin-2.4.0-20200807.110157-312.pom           07-Aug-2020 11:02  2.87 KB
spring-boot-maven-plugin-2.4.0-20200807.111016-313-javadoc.jar   07-Aug-2020 11:10  137.44 KB
spring-boot-maven-plugin-2.4.0-20200807.111016-313-sources.jar   07-Aug-2020 11:10  54.09 KB
spring-boot-maven-plugin-2.4.0-20200807.111016-313.jar           07-Aug-2020 11:10  91.56 KB
spring-boot-maven-plugin-2.4.0-20200807.111016-313.module        07-Aug-2020 11:10  4.57 KB
spring-boot-maven-plugin-2.4.0-20200807.111016-313.pom           07-Aug-2020 11:10  2.87 KB

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions