You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@continuum.apache.org by Edwin Punzalan <ep...@apache.org> on 2009/02/12 10:08:24 UTC

thoughts on CONTINUUM-745

Hi, guys.


I've been out for quite some time and now that I have some spare time, I
hope you don't mind me looking through jira again.  ^_^

Anyway, I'm interested in working on CONTINUUM-745 and have done some code
digging on how this can be accomplished.  Unfortunately, what I have in mind
is not a small change I can just decide to implement.  So I'm going to ask
your opinions on that and also ask your suggestions on how you think this
can be done.

As suggested, I looked at a solution that involves a checkout of the poms
from the SCM:

The first solution I looked into is to checkout just the pom files.  This is
not really bad since from the parent pom, we can locate where the module
poms are.  So I looked around and found that even for just SVN, its not
possible to checkout just one file.  An export of a single file is possible
but the export command is not even in maven-scm.

My next thought was to do a non-recursive checkout on the pom directory.
Maven-SCM currently checkout everything recursively, so we may need to
enhance it.  So this way, we'll be able to checkout the pom, as well as
other files with it in the directory.  Its not optimal, but it will work.
Btw, I'm only familiar with SVN and CVS.  So I'm not sure if the other SCMs
support non-recursive checkouts.  So this may not be a good idea if not all
SCMs support a non-recursive checkout.

And then I thought of an alternative (ambitious?) way to accomplish this:

Right now, when a parent pom is in a project group and a new module is added
to it, continuum will not discover this and doesn't create a new project for
that new module (right?).  So what I have in mind is to add a new action
(button?) that will look through all parent poms in the project group,
determine if there are modules which do not have a corresponding continuum
project and create them.  We can even add this action to the standard build
workflow of continuum for auto-discovery.

Then we can reuse this same action for CONTINUUM-745... that is, add the
multi-project pom into continuum (ignoring its modules during add) to create
just one continuum project to the project group.  And then the user can
choose to execute this action (or maybe its automatic after checkout?) so
that continuum projects will be created for its modules and added to the
project group.

Thoughts?

Re: thoughts on CONTINUUM-745

Posted by Brett Porter <br...@apache.org>.
On 15/02/2009, at 6:04 PM, Edwin Punzalan wrote:

> Thanks, Brett.
>
> Btw, I just realized that my proposal will affect (or will be  
> affected by)
> the "non-recursive" option when adding a new maven project.

Those people can now add using the non-recursive checkbox when the  
root project is added. Perhaps that becomes a permanent mode that is  
set on the project that turns on/off module discovery.

>
>
> I searched and found CONTINUUM-798 which is currently assigned to  
> Jesse.
> Wendy did raise the problem about the non-recursive projects.  I'm  
> guessing
> my suggestion above will prevent it.  Anyway, the issue is not In  
> Progress
> but I'll wait and see what Jesse has to say with my comment in there.

Yep, worth picking that up, also because Deng did an initial spec and  
because there is also a patch attached :)

How to track modules that get removed is also an interesting one to  
take into consideration - though I think I'd be happy enough with  
additions at first :)

Also, Deng & Marica, would this affect/be affected by parallel builds?

- Brett

--
Brett Porter
brett@apache.org
http://blogs.exist.com/bporter/


Re: thoughts on CONTINUUM-745

Posted by Edwin Punzalan <el...@gmail.com>.
Thanks, Brett.

Btw, I just realized that my proposal will affect (or will be affected by)
the "non-recursive" option when adding a new maven project.

I searched and found CONTINUUM-798 which is currently assigned to Jesse.
Wendy did raise the problem about the non-recursive projects.  I'm guessing
my suggestion above will prevent it.  Anyway, the issue is not In Progress
but I'll wait and see what Jesse has to say with my comment in there.

On Sat, Feb 14, 2009 at 6:53 AM, Brett Porter <br...@apache.org> wrote:

>
> On 12/02/2009, at 5:08 PM, Edwin Punzalan wrote:
>
>  Hi, guys.
>>
>>
>> I've been out for quite some time and now that I have some spare time, I
>> hope you don't mind me looking through jira again.  ^_^
>>
>
> \o/
> Welcome back :)
>
>  As suggested, I looked at a solution that involves a checkout of the poms
>> from the SCM:
>>
>
> What about checking out the entire first project (since that'll have to
> happen anyway), then read the POMs from the filesystem?
>
> That's actually very close to (or a step towards), this:
>
>  And then I thought of an alternative (ambitious?) way to accomplish this:
>>
>> Right now, when a parent pom is in a project group and a new module is
>> added
>> to it, continuum will not discover this and doesn't create a new project
>> for
>> that new module (right?).  So what I have in mind is to add a new action
>> (button?) that will look through all parent poms in the project group,
>> determine if there are modules which do not have a corresponding continuum
>> project and create them.  We can even add this action to the standard
>> build
>> workflow of continuum for auto-discovery.
>>
>
> That's a very highly desired feature, so if you're able to do so it would
> be great to have :)
>
>
>>
>> Then we can reuse this same action for CONTINUUM-745... that is, add the
>> multi-project pom into continuum (ignoring its modules during add) to
>> create
>> just one continuum project to the project group.  And then the user can
>> choose to execute this action (or maybe its automatic after checkout?) so
>> that continuum projects will be created for its modules and added to the
>> project group.
>>
>
> Yes, this would certainly work!
>
> Cheers,
> Brett
>
> --
> Brett Porter
> brett@apache.org
> http://blogs.exist.com/bporter/
>
>

Re: thoughts on CONTINUUM-745

Posted by Edwin Punzalan <ep...@apache.org>.
Thanks, Brett.

Btw, I just realized that my proposal will affect (or will be affected by)
the "non-recursive" option when adding a new maven project.

I searched and found CONTINUUM-798 which is currently assigned to Jesse.
Wendy did raise the problem about the non-recursive projects.  I'm guessing
my suggestion above will prevent it.  Anyway, the issue is not In Progress
but I'll wait and see what Jesse has to say with my comment in there.

On Sat, Feb 14, 2009 at 6:53 AM, Brett Porter <br...@apache.org> wrote:

>
> On 12/02/2009, at 5:08 PM, Edwin Punzalan wrote:
>
>  Hi, guys.
>>
>>
>> I've been out for quite some time and now that I have some spare time, I
>> hope you don't mind me looking through jira again.  ^_^
>>
>
> \o/
> Welcome back :)
>
>  As suggested, I looked at a solution that involves a checkout of the poms
>> from the SCM:
>>
>
> What about checking out the entire first project (since that'll have to
> happen anyway), then read the POMs from the filesystem?
>
> That's actually very close to (or a step towards), this:
>
>  And then I thought of an alternative (ambitious?) way to accomplish this:
>>
>> Right now, when a parent pom is in a project group and a new module is
>> added
>> to it, continuum will not discover this and doesn't create a new project
>> for
>> that new module (right?).  So what I have in mind is to add a new action
>> (button?) that will look through all parent poms in the project group,
>> determine if there are modules which do not have a corresponding continuum
>> project and create them.  We can even add this action to the standard
>> build
>> workflow of continuum for auto-discovery.
>>
>
> That's a very highly desired feature, so if you're able to do so it would
> be great to have :)
>
>
>>
>> Then we can reuse this same action for CONTINUUM-745... that is, add the
>> multi-project pom into continuum (ignoring its modules during add) to
>> create
>> just one continuum project to the project group.  And then the user can
>> choose to execute this action (or maybe its automatic after checkout?) so
>> that continuum projects will be created for its modules and added to the
>> project group.
>>
>
> Yes, this would certainly work!
>
> Cheers,
> Brett
>
> --
> Brett Porter
> brett@apache.org
> http://blogs.exist.com/bporter/
>
>

Re: thoughts on CONTINUUM-745

Posted by Brett Porter <br...@apache.org>.
On 12/02/2009, at 5:08 PM, Edwin Punzalan wrote:

> Hi, guys.
>
>
> I've been out for quite some time and now that I have some spare  
> time, I
> hope you don't mind me looking through jira again.  ^_^

\o/
Welcome back :)

> As suggested, I looked at a solution that involves a checkout of the  
> poms
> from the SCM:

What about checking out the entire first project (since that'll have  
to happen anyway), then read the POMs from the filesystem?

That's actually very close to (or a step towards), this:

> And then I thought of an alternative (ambitious?) way to accomplish  
> this:
>
> Right now, when a parent pom is in a project group and a new module  
> is added
> to it, continuum will not discover this and doesn't create a new  
> project for
> that new module (right?).  So what I have in mind is to add a new  
> action
> (button?) that will look through all parent poms in the project group,
> determine if there are modules which do not have a corresponding  
> continuum
> project and create them.  We can even add this action to the  
> standard build
> workflow of continuum for auto-discovery.

That's a very highly desired feature, so if you're able to do so it  
would be great to have :)

>
>
> Then we can reuse this same action for CONTINUUM-745... that is, add  
> the
> multi-project pom into continuum (ignoring its modules during add)  
> to create
> just one continuum project to the project group.  And then the user  
> can
> choose to execute this action (or maybe its automatic after  
> checkout?) so
> that continuum projects will be created for its modules and added to  
> the
> project group.

Yes, this would certainly work!

Cheers,
Brett

--
Brett Porter
brett@apache.org
http://blogs.exist.com/bporter/