Hi Deepak,

So there are multiple issues with this code that I attempt summarize below:
- First, you are directly using the subversion command in an "exec" block.
We used the subversion plugin to avoid having gradle depend on anything
other than gradle. I think it might be better to try and list the plugins
through the subversion-plugin for gradle.
- It would be very slow, memory consuming and inefficient to use the
gradlewSubprocess for each plugin individually and it might choke resources
on your computer
- Finally, the way you wrote this task would create a ".svn" directory for
each plugin individually instead of having a single ".svn" directory for
all of them under /plugins.

Maybe an easier way is to keep the pullAllPluginSource task as is, but
instead of deleting plugins, we just delete everything _inside_ plugins and
then move the checkout resources to there.

Would that solve the subversion problem? Let me just reiterate the steps:

- checkout plugins into /temp
- delete everything _inside_ /plugins
- move everything (including .svn) from /temp to /plugins
- delete /temp

Regards,

Taher Alkhateeb

On Wed, Mar 15, 2017 at 9:33 AM, Deepak Dixit <
deepak.di...@hotwaxsystems.com> wrote:

> Hi Taher,
>
> I tried to change it with following bug not able to run sub process.
>
> {code}
>
> task pullAllPluginsSource(group: ofbizPlugin,
>         description: 'Download and install all plugins from source
> control.') {
>     def svnOutput = new ByteArrayOutputStream()
>     exec {
>        commandLine 'svn', 'list','--xml',
> 'https://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk'
>        standardOutput = svnOutput
>     }
>     def plugins= new XmlParser().parseText(svnOutput.toString())
>     plugins.list.entry.each {plugin ->
>        def pluginId =  plugin.name.text()
>        gradlewSubprocess(['pullPluginSource', "-PpluginId=${pluginId}"])
>     }
> }
>
> {code}
>
>
> Thanks & Regards
> --
> Deepak Dixit
> www.hotwaxsystems.com
>
> On Wed, Mar 15, 2017 at 11:22 AM, Taher Alkhateeb <
> slidingfilame...@gmail.com> wrote:
>
> > Sure, let's change the implementation. I'd be glad to help if I receive
> > some suggestions. For now .. the implementation is as follows:
> >
> > - create a temp directory
> > - checkout to that directory
> > - delete /plugins
> > - rename temp to plugins
> >
> > I'm all ears for the best approach.
> >
> > On Wed, Mar 15, 2017 at 8:15 AM, Deepak Dixit <
> > deepak.di...@hotwaxsystems.com> wrote:
> >
> > > We need to enhance pullAllPluginsSource task, after running this you
> will
> > > not able to commit or run any svn command on plugins, as it do checkout
> > of
> > > plugins/trunk and copy its folder into plugins.
> > >
> > >
> > > Thanks & Regards
> > > --
> > > Deepak Dixit
> > > www.hotwaxsystems.com
> > >
> > > On Wed, Mar 15, 2017 at 12:18 AM, Jacques Le Roux <
> > > jacques.le.r...@les7arts.com> wrote:
> > >
> > > > That would be better indeed, I did not look a it yet.
> > > >
> > > > Jacques
> > > >
> > > >
> > > >
> > > > Le 14/03/2017 à 19:04, Deepak Dixit a écrit :
> > > >
> > > >> I think we can improve gradle task and instead of deleting plugins
> it
> > > will
> > > >> its delete sub-folder.
> > > >> I am sure gradle should have ability to delete sub-folder. :)
> > > >>
> > > >> If we delete README.txt then it will not be available in git as git
> > does
> > > >> not support empty folder.
> > > >>
> > > >>
> > > >>
> > > >> Thanks & Regards
> > > >> --
> > > >> Deepak Dixit
> > > >> www.hotwaxsystems.com
> > > >>
> > > >> On Tue, Mar 14, 2017 at 6:46 PM, Jacques Le Roux <
> > > >> jacques.le.r...@les7arts.com> wrote:
> > > >>
> > > >> Hi,
> > > >>>
> > > >>> I just crossed an issue while updating my ofbiz-framework working
> > copy
> > > >>> after having used pullAllPluginsSource. I get an error message
> > "Skipped
> > > >>> obstructing working copy".
> > > >>>
> > > >>> This is because we have already a plugins folder in the
> > > >>> ofbiz-framework/trunk branch and when we use pullAllPluginsSource
> we
> > > >>> replace it by a new one (plugins folder) and the main .svn gets
> > > confused
> > > >>> (in root)
> > > >>>
> > > >>> I think we can live w/o the README.txt in the plugins folder and
> the
> > > >>> folder altogether and document it another way if needed (in the
> main
> > > >>> README.MD?), it will fix this problem.
> > > >>>
> > > >>> Opinions?
> > > >>>
> > > >>> Jacques
> > > >>>
> > > >>>
> > > >>>
> > > >
> > >
> >
>

Reply via email to