Use Remote Resources Plugin to generate the legal files
-------------------------------------------------------

                 Key: FELIX-1747
                 URL: https://issues.apache.org/jira/browse/FELIX-1747
             Project: Felix
          Issue Type: Wish
            Reporter: Felix Meschberger


Richard Hall started a discussion on the dev list to redo the Apache Felix 
NOTICE file [1] and also created a Wiki page as the basis for further 
discussion [2].

I have now tried to convert the WebConsole project and the parent pom into 
using the remote resources plugin.

The parent POM is modified to depend on the Apache parent 6, which already 
includes the remote resources plugin setup. I also added the maven-ianal-plugin 
which verifies the presence of the legal files (and IIRC also runs rat on the 
source). I will attach the parent pom patch.

Note, that depending on the Apache parent 6, we can even get rid of most of our 
release profile setup, which is already present in the Apache parent 6.

The modified Web Console project is available in my sandbox at [3]. The changes 
are
  - depend on the snapshot parent pom (expecting modification patch applied)
  - removed all notice and license files from root folder
  - created src/main/appended-resources folder with the following contents
      - supplemental-models.xml for the JSON additional information (this file 
is required only for incomplete dependencies)
      - LICENSE.vm - additional licenses in one single file - will be merged 
with ASL2 file
      - NOTICE.vm - additional notes (only silk icons are required here)

The result is the correct LICENSE file (ASL2 plus all dependent licenses) and 
correct NOTICE only containining required notes and finally a DEPENDENCIES file 
listing M2 dependencies with their organizational and license information.

One thing that is still missing from this setup is the correct setup of the 
maven assembly plugin: This plugin does not pack the generated LICENSE and 
NOTICE files using the plugin provided descriptors. The solution would be to 
define our own descriptors in a separate project, which we can refer to in the 
assembly plugin setup (see [4] for how we could do this). This would simplify 
parent pom setup for releases even more because we could define the descriptors 
without bz2 generation and directly attach the generated assemblies.


[1] http://markmail.org/thread/x2gcnlwil46imks3
[2] 
http://cwiki.apache.org/confluence/display/FELIX/NOTICE+file+template+%28PROPOSED%29
[3] http://svn.apache.org/repos/asf/felix/sandbox/fmeschbe/webconsole_notice
[4] 
http://maven.apache.org/plugins/maven-assembly-plugin/examples/sharing-descriptors.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to