Author: henning
Date: Thu Nov 4 18:19:58 2010
New Revision: 1031123
URL: http://svn.apache.org/viewvc?rev=1031123&view=rev
Log:
add a tweaked src assembly that builds both zip and tar.gz. Also add a few
tweaks for style
Added:
commons/proper/vfs/trunk/dist/src/assembly/src.xml (with props)
Modified:
commons/proper/vfs/trunk/dist/ (props changed)
commons/proper/vfs/trunk/dist/pom.xml
commons/proper/vfs/trunk/pom.xml
Propchange: commons/proper/vfs/trunk/dist/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Nov 4 18:19:58 2010
@@ -0,0 +1,4 @@
+*.iml
+target
+.*
+maven-eclipse.xml
Modified: commons/proper/vfs/trunk/dist/pom.xml
URL:
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/dist/pom.xml?rev=1031123&r1=1031122&r2=1031123&view=diff
==============================================================================
--- commons/proper/vfs/trunk/dist/pom.xml (original)
+++ commons/proper/vfs/trunk/dist/pom.xml Thu Nov 4 18:19:58 2010
@@ -114,11 +114,6 @@ limitations under the License.
</dependency>
</dependencies>
- <properties>
- <commons.componentid>vfs-dist</commons.componentid>
- <vfs.parent.dir>${basedir}/..</vfs.parent.dir>
- </properties>
-
<profiles>
<profile>
<id>apache-release</id>
@@ -130,6 +125,7 @@ limitations under the License.
<execution>
<id>binary</id>
<configuration>
+
<finalName>commons-vfs-${project.version}</finalName>
<descriptors>
<descriptor>src/assembly/bin.xml</descriptor>
</descriptors>
Added: commons/proper/vfs/trunk/dist/src/assembly/src.xml
URL:
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/dist/src/assembly/src.xml?rev=1031123&view=auto
==============================================================================
--- commons/proper/vfs/trunk/dist/src/assembly/src.xml (added)
+++ commons/proper/vfs/trunk/dist/src/assembly/src.xml Thu Nov 4 18:19:58 2010
@@ -0,0 +1,75 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+
+<assembly>
+ <id>src</id>
+ <formats>
+ <format>zip</format>
+ <format>tar.gz</format>
+ </formats>
+ <fileSets>
+ <!-- main project directory structure -->
+ <fileSet>
+ <directory>.</directory>
+ <outputDirectory>/</outputDirectory>
+ <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/)(.*/)?[^/]*\.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>
+ <!-- license, readme, etc. calculated at build time -->
+ <fileSet>
+
<directory>${project.build.directory}/maven-shared-archive-resources/META-INF</directory>
+ <outputDirectory>/</outputDirectory>
+ </fileSet>
+ </fileSets>
+</assembly>
Propchange: commons/proper/vfs/trunk/dist/src/assembly/src.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: commons/proper/vfs/trunk/dist/src/assembly/src.xml
------------------------------------------------------------------------------
svn:keywords = Id Author Date Revision
Modified: commons/proper/vfs/trunk/pom.xml
URL:
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/pom.xml?rev=1031123&r1=1031122&r2=1031123&view=diff
==============================================================================
--- commons/proper/vfs/trunk/pom.xml (original)
+++ commons/proper/vfs/trunk/pom.xml Thu Nov 4 18:19:58 2010
@@ -378,13 +378,60 @@
<url>scp://people.apache.org/www/commons.apache.org/vfs/</url>
</site>
</distributionManagement>
-
+
+ <!-- Releasing VFS as a multi-module build with binary artifacts is somewhat
+ painful. This profile hooks into the commons-parent and the apache-pom
to
+ get the build done and then uses the assembly to package it up.
+ -->
<profiles>
<profile>
<id>apache-release</id>
+ <!-- The binary distribution must be built after all the submodules have
been
+ built. So that happens in an additional sub-project which depends
on all
+ the submodules to build. So the 'dist' submodule is only activated
in the
+ release profile. Otherwise, there is nothing to see here.
+ -->
<modules>
<module>dist</module>
</modules>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <executions>
+ <!-- As the main Apache pom only builds source zip archives but
+ commons wants both zip and tar.gz and because this is
configured
+ in the assembly, we need to use a specific assembly. That
also allows
+ nameing the final artifact as -src not -source-release.
+ -->
+ <execution>
+ <id>vfs-source-release-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ <configuration>
+ <finalName>commons-vfs-${project.version}</finalName>
+ <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
+ <descriptors>
+ <descriptor>dist/src/assembly/src.xml</descriptor>
+ </descriptors>
+ <tarLongFileMode>gnu</tarLongFileMode>
+ </configuration>
+ </execution>
+ <!-- But the original source build is still hooked up and would
+ create a second source archive. Luckily, it can be turned
off.
+ -->
+ <execution>
+ <id>source-release-assembly</id>
+ <configuration>
+ <skipAssembly>true</skipAssembly>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
</profile>
</profiles>
</project>