aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pom.xml18
-rw-r--r--src/main/assembly/src.xml64
2 files changed, 61 insertions, 21 deletions
diff --git a/pom.xml b/pom.xml
index 79a950bff..6b2c42b31 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1865,8 +1865,26 @@
<artifactId>maven-assembly-plugin</artifactId>
<inherited>false</inherited>
<configuration>
+ <appendAssemblyId>false</appendAssemblyId>
<finalName>apache-archiva-${project.version}-src</finalName>
+ <descriptors>
+ <descriptor>${basedir}/src/main/assembly/src.xml</descriptor>
+ </descriptors>
</configuration>
+ <executions>
+ <execution>
+ <inherited>false</inherited>
+ <id>source-release-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ <configuration>
+ <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
+ <tarLongFileFormat>gnu</tarLongFileFormat>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
</plugins>
</pluginManagement>
diff --git a/src/main/assembly/src.xml b/src/main/assembly/src.xml
index ff66e9a6f..8459755e0 100644
--- a/src/main/assembly/src.xml
+++ b/src/main/assembly/src.xml
@@ -25,34 +25,56 @@
<format>zip</format>
</formats>
<fileSets>
+ <!-- main project directory structure -->
<fileSet>
- <useDefaultExcludes>false</useDefaultExcludes>
<directory>.</directory>
<outputDirectory>/</outputDirectory>
- <includes>
- <include>**/CVS/**</include>
- </includes>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ <excludes>
+ <!-- build output -->
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*]</exclude>
+
+ <!-- NOTE: Most of the following excludes should not be required
+ if the standard release process is followed. This is because the
+ release plugin checks out project sources into a location like
+ target/checkout, then runs the build from there. The result is
+ a source-release archive that comes from a pretty clean directory
+ structure.
+
+ HOWEVER, if the release plugin is configured to run extra goals
+ or generate a project website, it's definitely possible that some
+ of these files will be present. So, it's safer to exclude them.
+ -->
+
+ <!-- IDEs -->
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.idea(/.*)?]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?out(/.*)?]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]</exclude>
+
+ <!-- misc -->
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser]</exclude>
+
+ <!-- release-plugin temp files -->
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]</exclude>
+ <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties]</exclude>
+ </excludes>
</fileSet>
<fileSet>
+ <useDefaultExcludes>false</useDefaultExcludes>
<directory>.</directory>
<outputDirectory>/</outputDirectory>
- <excludes>
- <exclude>**/target/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/archiva-applet.jar</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/META-INF/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/images/redback/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/template/redback/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/classes/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/lib/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/database/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/logs/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/redback/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/css/redback/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/jsp/redback/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/template/redback/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/logs/**</exclude>
- <exclude>**/archiva-webapp/src/main/webapp/WEB-INF/temp/**</exclude>
- </excludes>
+ <includes>
+ <include>**/CVS/**</include>
+ </includes>
</fileSet>
<fileSet>
<directory>target/maven-shared-archive-resources/META-INF/</directory>