You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Ard Schrijvers (JIRA)" <ji...@apache.org> on 2012/07/09 12:31:33 UTC

[jira] [Commented] (OCM-62) Improve pom to align releases with the Jackrabbit assembly plugin configuration

    [ https://issues.apache.org/jira/browse/OCM-62?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13409312#comment-13409312 ] 

Ard Schrijvers commented on OCM-62:
-----------------------------------

Comment by Jukka from mailing list:

On Mon, Jul 9, 2012 at 11:30 AM, Ard Schrijvers
<a....@onehippo.com> wrote:
> On Mon, Jul 9, 2012 at 10:51 AM, Bart van der Schans
> <b....@onehippo.com> wrote:
>> The src zip now contains a NOTICE.txt and NOTICE file as well as a
>> LICENSE.txt as a LICENSE file.

That's a consequence of using the source-release zip generated by the
release profile as the release artifact. Even though it meets the
formal Apache release guidelines, I'm not entirely happy with the way
it's produced.

Instead, if you look at the main Jackrabbit or Oak trunk builds, there
we have a custom assembly plugin configuration specified in the
release profile:

    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <executions>
        <execution>
          <goals>
            <goal>single</goal>
          </goals>
          <phase>package</phase>
          <configuration>
            <descriptors>
              <descriptor>assembly.xml</descriptor>
            </descriptors>
          </configuration>
        </execution>
        <execution>
          <id>source-release-assembly</id>
          <configuration>
            <skipAssembly>true</skipAssembly>
          </configuration>
        </execution>
      </executions>
    </plugin>

Basically this overrides the default source-release assembly
(skipAssembly=true) defined in the Apache parent POM, and replaces it
with a custom one defined in the assembly.xml descriptor that looks
like this:

    <assembly>
      <id>src</id>
      <formats>
        <format>zip</format>
      </formats>
      <fileSets>
        <fileSet>
          <directory>${project.basedir}</directory>
          <outputDirectory></outputDirectory>
          <excludes>
            <exclude>**/target/**</exclude>
            <exclude>**/.*/**</exclude>
          </excludes>
        </fileSet>
      </fileSets>
    </assembly>

The idea here is to copy everything in the current checkout, excluding
generated files, so that the source archive ends up containing an
exact copy of the sources that were used to generate the rest of the
release. This is IMHO a better approach than the default
source-release assembly that treats the source archive as another
generated artifact that'll then get to include the autogenerated
LICENSE/NOTICE/DEPENDENCIES files, a process that was originally
designed just for binary artifacts..
                
> Improve pom to align releases with the Jackrabbit assembly plugin configuration 
> --------------------------------------------------------------------------------
>
>                 Key: OCM-62
>                 URL: https://issues.apache.org/jira/browse/OCM-62
>             Project: Jackrabbit OCM
>          Issue Type: Task
>            Reporter: Ard Schrijvers
>            Assignee: Ard Schrijvers
>             Fix For: 2.0.1
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira