You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Mirko Friedenhagen <mf...@gmail.com> on 2014/06/20 14:09:15 UTC

Maven plugin which displays the parents of a given project recursively

Hello,

does anybody know of a plugin which shows the GAV coordinates of the
parents of a given project recursively? Or is there any feasible
plugin where I could contribute with a goal?

My team of 3 is consulting approx. 200 developers in regards of build
engineering with ca. 1000 Jenkins jobs and we often see they are using
outdated versions of our department POM. Having this information in
the console of a Jenkins job would allow to see this without checking
the POM.

Regards Mirko
--
http://illegalstateexception.blogspot.com/
https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
https://bitbucket.org/mfriedenhagen/

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven plugin which displays the parents of a given project recursively

Posted by Mirko Friedenhagen <mf...@gmail.com>.
Thanks, putting a goal like this in the versions-maven-plugin is a
good idea :-).
Concerning automatic updates:
* We do this in some ways, in the end product teams have the
responsibility for a working release, so I may just advise to do this.
* Unfortunately Maven configurations and usage are to diverse to
enforce this easily.

Regards Mirko
--
http://illegalstateexception.blogspot.com/
https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
https://bitbucket.org/mfriedenhagen/


On Fri, Jun 20, 2014 at 2:52 PM, jieryn <ji...@gmail.com> wrote:
> http://mojo.codehaus.org/versions-maven-plugin/
>
> I have Jenkins jobs which @weekly run a smoke test "update all the
> things and see if it works" build, for each project. I also have a set
> of jobs which are virtually the same but simply run the display
> versions of the plugin goals.
>
> If the team gets confident in this process, you can exploit
> scm:checkin to automatically commit these dependency and parent
> updates if the build is successful. It's pretty easy, actually.
>
> On Fri, Jun 20, 2014 at 8:09 AM, Mirko Friedenhagen
> <mf...@gmail.com> wrote:
>> Hello,
>>
>> does anybody know of a plugin which shows the GAV coordinates of the
>> parents of a given project recursively? Or is there any feasible
>> plugin where I could contribute with a goal?
>>
>> My team of 3 is consulting approx. 200 developers in regards of build
>> engineering with ca. 1000 Jenkins jobs and we often see they are using
>> outdated versions of our department POM. Having this information in
>> the console of a Jenkins job would allow to see this without checking
>> the POM.
>>
>> Regards Mirko
>> --
>> http://illegalstateexception.blogspot.com/
>> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
>> https://bitbucket.org/mfriedenhagen/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven plugin which displays the parents of a given project recursively

Posted by jieryn <ji...@gmail.com>.
http://mojo.codehaus.org/versions-maven-plugin/

I have Jenkins jobs which @weekly run a smoke test "update all the
things and see if it works" build, for each project. I also have a set
of jobs which are virtually the same but simply run the display
versions of the plugin goals.

If the team gets confident in this process, you can exploit
scm:checkin to automatically commit these dependency and parent
updates if the build is successful. It's pretty easy, actually.

On Fri, Jun 20, 2014 at 8:09 AM, Mirko Friedenhagen
<mf...@gmail.com> wrote:
> Hello,
>
> does anybody know of a plugin which shows the GAV coordinates of the
> parents of a given project recursively? Or is there any feasible
> plugin where I could contribute with a goal?
>
> My team of 3 is consulting approx. 200 developers in regards of build
> engineering with ca. 1000 Jenkins jobs and we often see they are using
> outdated versions of our department POM. Having this information in
> the console of a Jenkins job would allow to see this without checking
> the POM.
>
> Regards Mirko
> --
> http://illegalstateexception.blogspot.com/
> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
> https://bitbucket.org/mfriedenhagen/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven plugin which displays the parents of a given project recursively

Posted by Mirko Friedenhagen <mf...@gmail.com>.
Ron,

we have developed some tools which try to guess POM resolutions using
Python and getting the same resolution resp. interpolations as Maven
is sometimes hard to do:

* Inheriting POMs do not need to override version and groupId so you
have to interpolate these from the ancestors.
* Same for properties which are inherited as well while other elements
as scm are adding module/artifactIds.

Regards
Mirko
Regards Mirko
--
http://illegalstateexception.blogspot.com/
https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
https://bitbucket.org/mfriedenhagen/


On Fri, Jun 20, 2014 at 6:49 PM, Ron Wheeler
<rw...@artifact-software.com> wrote:
> I understand that you have a few (120) repos but once you have made the
> list, it is easy to maintain.
> Same as the list of active projects. 1000 is a lot of names to list but you
> probably can find one already existing or make one through a partially
> automated process.
>
> Otherwise it is a clerical task that you can give to a junior tech.
>
> DEPARTMENT_POM ->TEAM_POM -> PROJECT_POM -> MODULE_POM
> is more interesting but probably not that hard to manage.
>
> DEPARTMENT_POM ->TEAM_POM is a small list.
> You want to eliminate duplicate sub-trees.
>
> Just a suggestion for a non-maven solution. That is one of the advantages of
> using XML in the POM,
> You are not restricted to using the application for which the files are
> designed.
> There are lots of XML tools - both low level and high level that can be
> applied.
>
> Ron
>
>
>
> On 20/06/2014 11:55 AM, Mirko Friedenhagen wrote:
>>
>> Ron,
>>
>> * finding all POMs is not that simple in our case as we have at least
>> 20 SVN repositories with multiple projects and about 100 git
>> repositories.
>> * POMs are XML but a lot of projects have at least DEPARTMENT_POM ->
>> TEAM_POM -> PROJECT_POM -> MODULE_POM relations, so we have to lookup
>> stuff in Artifactory anyway.
>> * I think I will implement a goal `display-ancestors` in the
>> versions-maven-plugin :-).
>>
>> Regards
>> Mirko
>>
>>
>> Regards Mirko
>> --
>> http://illegalstateexception.blogspot.com/
>> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
>> https://bitbucket.org/mfriedenhagen/
>>
>>
>> On Fri, Jun 20, 2014 at 4:22 PM, Ron Wheeler
>> <rw...@artifact-software.com> wrote:
>>>
>>> Good description of the use case that helps.
>>> You are not very explicit about how you identify the projects to be
>>> checked
>>> or where (SCM, staging folder) you want to find them.
>>>
>>> Just a thought:
>>> Couldn't this be accomplished with a batch job that used XSLT or a simple
>>> Java program with an XML parser to check POMs for outdated references?
>>> POMs are just XML with a pretty simple structure.
>>> They always have the same name so finding them in the project is not
>>> hard.
>>> You are always looking down the same XPATH(s?) for the version and you
>>> know
>>> which one is right.
>>>
>>> Is there some magic that Maven includes that is needed here?
>>>
>>> Ron
>>>
>>>
>>> On 20/06/2014 8:09 AM, Mirko Friedenhagen wrote:
>>>>
>>>> Hello,
>>>>
>>>> does anybody know of a plugin which shows the GAV coordinates of the
>>>> parents of a given project recursively? Or is there any feasible
>>>> plugin where I could contribute with a goal?
>>>>
>>>> My team of 3 is consulting approx. 200 developers in regards of build
>>>> engineering with ca. 1000 Jenkins jobs and we often see they are using
>>>> outdated versions of our department POM. Having this information in
>>>> the console of a Jenkins job would allow to see this without checking
>>>> the POM.
>>>>
>>>> Regards Mirko
>>>> --
>>>> http://illegalstateexception.blogspot.com/
>>>> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
>>>> https://bitbucket.org/mfriedenhagen/
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>>>> For additional commands, e-mail: users-help@maven.apache.org
>>>>
>>>>
>>>
>>> --
>>> Ron Wheeler
>>> President
>>> Artifact Software Inc
>>> email: rwheeler@artifact-software.com
>>> skype: ronaldmwheeler
>>> phone: 866-970-2435, ext 102
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: users-help@maven.apache.org
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>>
>
>
> --
> Ron Wheeler
> President
> Artifact Software Inc
> email: rwheeler@artifact-software.com
> skype: ronaldmwheeler
> phone: 866-970-2435, ext 102
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven plugin which displays the parents of a given project recursively

Posted by Ron Wheeler <rw...@artifact-software.com>.
I understand that you have a few (120) repos but once you have made the 
list, it is easy to maintain.
Same as the list of active projects. 1000 is a lot of names to list but 
you probably can find one already existing or make one through a 
partially automated process.

Otherwise it is a clerical task that you can give to a junior tech.
DEPARTMENT_POM ->TEAM_POM -> PROJECT_POM -> MODULE_POM
is more interesting but probably not that hard to manage.

DEPARTMENT_POM ->TEAM_POM is a small list.
You want to eliminate duplicate sub-trees.

Just a suggestion for a non-maven solution. That is one of the 
advantages of using XML in the POM,
You are not restricted to using the application for which the files are 
designed.
There are lots of XML tools - both low level and high level that can be 
applied.

Ron


On 20/06/2014 11:55 AM, Mirko Friedenhagen wrote:
> Ron,
>
> * finding all POMs is not that simple in our case as we have at least
> 20 SVN repositories with multiple projects and about 100 git
> repositories.
> * POMs are XML but a lot of projects have at least DEPARTMENT_POM ->
> TEAM_POM -> PROJECT_POM -> MODULE_POM relations, so we have to lookup
> stuff in Artifactory anyway.
> * I think I will implement a goal `display-ancestors` in the
> versions-maven-plugin :-).
>
> Regards
> Mirko
>
>
> Regards Mirko
> --
> http://illegalstateexception.blogspot.com/
> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
> https://bitbucket.org/mfriedenhagen/
>
>
> On Fri, Jun 20, 2014 at 4:22 PM, Ron Wheeler
> <rw...@artifact-software.com> wrote:
>> Good description of the use case that helps.
>> You are not very explicit about how you identify the projects to be checked
>> or where (SCM, staging folder) you want to find them.
>>
>> Just a thought:
>> Couldn't this be accomplished with a batch job that used XSLT or a simple
>> Java program with an XML parser to check POMs for outdated references?
>> POMs are just XML with a pretty simple structure.
>> They always have the same name so finding them in the project is not hard.
>> You are always looking down the same XPATH(s?) for the version and you know
>> which one is right.
>>
>> Is there some magic that Maven includes that is needed here?
>>
>> Ron
>>
>>
>> On 20/06/2014 8:09 AM, Mirko Friedenhagen wrote:
>>> Hello,
>>>
>>> does anybody know of a plugin which shows the GAV coordinates of the
>>> parents of a given project recursively? Or is there any feasible
>>> plugin where I could contribute with a goal?
>>>
>>> My team of 3 is consulting approx. 200 developers in regards of build
>>> engineering with ca. 1000 Jenkins jobs and we often see they are using
>>> outdated versions of our department POM. Having this information in
>>> the console of a Jenkins job would allow to see this without checking
>>> the POM.
>>>
>>> Regards Mirko
>>> --
>>> http://illegalstateexception.blogspot.com/
>>> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
>>> https://bitbucket.org/mfriedenhagen/
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: users-help@maven.apache.org
>>>
>>>
>>
>> --
>> Ron Wheeler
>> President
>> Artifact Software Inc
>> email: rwheeler@artifact-software.com
>> skype: ronaldmwheeler
>> phone: 866-970-2435, ext 102
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>


-- 
Ron Wheeler
President
Artifact Software Inc
email: rwheeler@artifact-software.com
skype: ronaldmwheeler
phone: 866-970-2435, ext 102


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven plugin which displays the parents of a given project recursively

Posted by Mirko Friedenhagen <mf...@gmail.com>.
Ron,

* finding all POMs is not that simple in our case as we have at least
20 SVN repositories with multiple projects and about 100 git
repositories.
* POMs are XML but a lot of projects have at least DEPARTMENT_POM ->
TEAM_POM -> PROJECT_POM -> MODULE_POM relations, so we have to lookup
stuff in Artifactory anyway.
* I think I will implement a goal `display-ancestors` in the
versions-maven-plugin :-).

Regards
Mirko


Regards Mirko
--
http://illegalstateexception.blogspot.com/
https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
https://bitbucket.org/mfriedenhagen/


On Fri, Jun 20, 2014 at 4:22 PM, Ron Wheeler
<rw...@artifact-software.com> wrote:
> Good description of the use case that helps.
> You are not very explicit about how you identify the projects to be checked
> or where (SCM, staging folder) you want to find them.
>
> Just a thought:
> Couldn't this be accomplished with a batch job that used XSLT or a simple
> Java program with an XML parser to check POMs for outdated references?
> POMs are just XML with a pretty simple structure.
> They always have the same name so finding them in the project is not hard.
> You are always looking down the same XPATH(s?) for the version and you know
> which one is right.
>
> Is there some magic that Maven includes that is needed here?
>
> Ron
>
>
> On 20/06/2014 8:09 AM, Mirko Friedenhagen wrote:
>>
>> Hello,
>>
>> does anybody know of a plugin which shows the GAV coordinates of the
>> parents of a given project recursively? Or is there any feasible
>> plugin where I could contribute with a goal?
>>
>> My team of 3 is consulting approx. 200 developers in regards of build
>> engineering with ca. 1000 Jenkins jobs and we often see they are using
>> outdated versions of our department POM. Having this information in
>> the console of a Jenkins job would allow to see this without checking
>> the POM.
>>
>> Regards Mirko
>> --
>> http://illegalstateexception.blogspot.com/
>> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
>> https://bitbucket.org/mfriedenhagen/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>>
>
>
> --
> Ron Wheeler
> President
> Artifact Software Inc
> email: rwheeler@artifact-software.com
> skype: ronaldmwheeler
> phone: 866-970-2435, ext 102
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven plugin which displays the parents of a given project recursively

Posted by Ron Wheeler <rw...@artifact-software.com>.
Good description of the use case that helps.
You are not very explicit about how you identify the projects to be 
checked or where (SCM, staging folder) you want to find them.

Just a thought:
Couldn't this be accomplished with a batch job that used XSLT or a 
simple Java program with an XML parser to check POMs for outdated 
references?
POMs are just XML with a pretty simple structure.
They always have the same name so finding them in the project is not hard.
You are always looking down the same XPATH(s?) for the version and you 
know which one is right.

Is there some magic that Maven includes that is needed here?

Ron

On 20/06/2014 8:09 AM, Mirko Friedenhagen wrote:
> Hello,
>
> does anybody know of a plugin which shows the GAV coordinates of the
> parents of a given project recursively? Or is there any feasible
> plugin where I could contribute with a goal?
>
> My team of 3 is consulting approx. 200 developers in regards of build
> engineering with ca. 1000 Jenkins jobs and we often see they are using
> outdated versions of our department POM. Having this information in
> the console of a Jenkins job would allow to see this without checking
> the POM.
>
> Regards Mirko
> --
> http://illegalstateexception.blogspot.com/
> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
> https://bitbucket.org/mfriedenhagen/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>


-- 
Ron Wheeler
President
Artifact Software Inc
email: rwheeler@artifact-software.com
skype: ronaldmwheeler
phone: 866-970-2435, ext 102


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org