BuildInfoRecorder can upload "stale" POM when using maven-shade plugin #3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When using maven-shade plugin, the plugin tends to create a dependency-reduced-pom.xml, which basically contains a slightly modified version of the original POM (dependencies removed, or modified to have provided scope).
When using Jenkins in conjuction with artifactory-plugin suddenly the dependency-reduced-pom.xml starts to get ignored, and always the original POM gets deployed to Artifactory.
After hours of debugging I think I've nailed it down to BuildInfoRecorder#addArtifactsToCurrentModule where the deployable artifact would refer to an incorrect POM (rather than using the correct POM from the ProjectArtifactMetadata), changing that seems to resolve the problem for me. I've ran tests with single module and multi module project and the uploaded POMs looked okay as far as I could see.