[ 
https://issues.apache.org/jira/browse/HADOOP-8924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chris Nauroth updated HADOOP-8924:
----------------------------------

    Attachment: HADOOP-8924-branch-trunk-win.2.patch
                HADOOP-8924.2.patch

The discussion on common-dev mentioned the idea of using a Maven plugin, but 
building it within the reactor as a new sub-module of the main Hadoop project 
instead of a separately deployed artifact.  It was mentioned that Avro already 
does this kind of thing.

I wanted to see what this would look like, so I took the Maven plugin code from 
Alejandro's github repo, copied it into the hadoop-common tree, and adjusted 
the pom.xml files to reference this.  (I did not include ProtocMojo.java, since 
that isn't the scope of this jira.)  I'm attaching patches for trunk and 
branch-trunk-win that show this work.

I'm hopeful that this approach will be an acceptable compromise for everyone.  
The version info code is still part of the main Hadoop project, easily visible 
to any Hadoop developer or release engineer.  The Maven plugin framework does 
require some extra boilerplate code, but the focus is still on generating the 
version info.  By making it a plugin instead of a stand-alone executable, we 
avoid the need to duplicate the code for common and yarn, like Radim mentioned.

                
> Hadoop Common creating package-info.java must not depend on sh, at least for 
> Windows
> ------------------------------------------------------------------------------------
>
>                 Key: HADOOP-8924
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8924
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: build
>    Affects Versions: trunk-win
>            Reporter: Chris Nauroth
>            Assignee: Alejandro Abdelnur
>             Fix For: trunk-win
>
>         Attachments: HADOOP-8924.2.patch, 
> HADOOP-8924-branch-trunk-win.2.patch, HADOOP-8924-branch-trunk-win.patch, 
> HADOOP-8924.patch
>
>
> Currently, the build process relies on saveVersion.sh to generate 
> package-info.java with a version annotation.  The sh binary may not be 
> available on all developers' machines (e.g. Windows without Cygwin). This 
> issue tracks removal of that dependency in Hadoop Common.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to