Skip to content

Commit 484b6ab

Browse files
committed
[ARCHETYPE-657] store IT data in target/ instead of target/classes/
1 parent 70a6cc5 commit 484b6ab

File tree

2 files changed

+14
-24
lines changed

2 files changed

+14
-24
lines changed

maven-archetype-plugin/src/it/projects/ARCHETYPE-622_main_build_settings/verify.groovy

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,6 @@ assert content.contains("Archetype tests executed!") :
3939
assert content.contains("local.central (file://") :
4040
"test-settings.xml wasn't passed from the main Maven build!: 'local.central (file://' was NOT found in the output! The output was:\n${content}"
4141

42-
def settingsXmlPath = new File("maven-archetype-plugin/target/it/projects/ARCHETYPE-622_main_build_settings/target/classes/archetype-it", "archetype-settings.xml").toPath().toString().replace("\\", "\\\\")
42+
def settingsXmlPath = new File("maven-archetype-plugin/target/it/projects/ARCHETYPE-622_main_build_settings/target/archetype-it", "archetype-settings.xml").toPath().toString().replace("\\", "\\\\")
4343
assert content.matches("(?s).*\\[DEBUG\\] Reading user settings from .*" + settingsXmlPath + ".*") : "test-settings.xml wasn't passed from the main Maven build!: 'Reading user settings from ... archetype-settings.xml' was NOT found in the output! The output was:\n${content}"
4444

maven-archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/IntegrationTestMojo.java

+13-23
Original file line numberDiff line numberDiff line change
@@ -623,37 +623,27 @@ private void invokePostArchetypeGenerationGoals(String goals, File basedir, File
623623
request.setProperties(props);
624624
}
625625

626+
File archetypeItDirectory = new File(project.getBuild().getDirectory(), "archetype-it");
627+
if (archetypeItDirectory.exists()) {
628+
FileUtils.deleteDirectory(archetypeItDirectory);
629+
}
630+
archetypeItDirectory.mkdir();
631+
File userSettings;
626632
if (settingsFile != null) {
627-
File interpolatedSettingsDirectory = new File(project.getBuild().getOutputDirectory(), "archetype-it");
628-
if (interpolatedSettingsDirectory.exists()) {
629-
FileUtils.deleteDirectory(interpolatedSettingsDirectory);
630-
}
631-
interpolatedSettingsDirectory.mkdir();
632-
File interpolatedSettingsFile =
633-
new File(interpolatedSettingsDirectory, "interpolated-" + settingsFile.getName());
633+
userSettings = new File(archetypeItDirectory, "interpolated-" + settingsFile.getName());
634634

635-
buildInterpolatedFile(settingsFile, interpolatedSettingsFile);
636-
637-
request.setUserSettingsFile(interpolatedSettingsFile);
638-
} else // Use settings coming from the main Maven build
639-
{
640-
File mainBuildSettingsDirectory = new File(project.getBuild().getOutputDirectory(), "archetype-it");
641-
mainBuildSettingsDirectory.mkdir();
642-
File mainBuildSettingsFile = new File(mainBuildSettingsDirectory, "archetype-settings.xml");
635+
buildInterpolatedFile(settingsFile, userSettings);
636+
} else {
637+
// Use settings coming from the main Maven build
638+
userSettings = new File(archetypeItDirectory, "archetype-settings.xml");
643639

644640
SettingsXpp3Writer settingsWriter = new SettingsXpp3Writer();
645641

646-
try (FileWriter fileWriter = new FileWriter(mainBuildSettingsFile)) {
642+
try (FileWriter fileWriter = new FileWriter(userSettings)) {
647643
settingsWriter.write(fileWriter, settings);
648644
}
649-
650-
if (getLog().isDebugEnabled()) {
651-
getLog().debug("Created archetype-settings.xml with settings from the main Maven build: "
652-
+ mainBuildSettingsFile.getAbsolutePath());
653-
}
654-
655-
request.setUserSettingsFile(mainBuildSettingsFile);
656645
}
646+
request.setUserSettingsFile(userSettings);
657647

658648
try {
659649
InvocationResult result = invoker.execute(request);

0 commit comments

Comments
 (0)