Thanks for the suggestion Aravind, I will try the caching option.

Regards,
Raghu

On Thursday, 26 October 2017 13:44:09 UTC+1, Aravind SV wrote:
>
> For some other reasons, that PR did not get merged. However, even if that 
> did get merged, running multiple agents with the same work dir would not be 
> possible/advisable. They would totally step over each other. Moreover, 
> there would be no guarantee that the second stage runs on the same agent, 
> right after the first stage. It's possible that the first stage runs again, 
> for a new commit, before the second stage is picked up.
>
> The recommended solution would be to use artifacts (publish in first 
> stage, fetch in second). However, you already mentioned that you tried it 
> and it was too slow for your case.
>
>
> Another approach could be to use some kind of a cache or artifact 
> repository (Nexus, etc).
>
>
> If that is too heavyweight, I guess you can see if you can implement a 
> simple cache on the agent. Something like this:
>    
>    1. Finish stage 1. At the end, copy artifacts into: 
>    
> C:\my-artifacts\pipeline-name\pipeline-counter\stage-name\stage-counter\job-name\
>    2. In stage 2, see if those artifacts exist, using the corresponding 
>    environment variables 
>    
> <https://docs.gocd.org/current/faq/environment_variables.html#standard-gocd-environment-variables>
>  
>    and copy them back and use them. If not, build them.
>
> This takes a little more scripting, but it ensures that the correct 
> artifacts will be used, rather than hoping that the second stage runs on 
> the same agent machine, immediately after the first stage.
> Cheers,
> Aravind
>
>
>
>
> On Thu, Oct 26, 2017 at 5:16 AM, Raghu Gattapur <[email protected] 
> <javascript:>> wrote:
>
>> In the scenario where Stage 1  would checkout the source from git and 
>> restore nuget packages then build the application. In second stage multiple 
>> services and local nuget packages are being produced which is a time 
>> consuming process with one working Agent. So thought of running tasks in 
>> parallel which can only be accomplished by multiple agents, for that 
>> initially tried using artifacts but that increased the time lapse even 
>> more. 
>> The only reason to have same work directory(sandbox) is to share the 
>> existing result of previous stage in same machine. 
>>
>> On Thursday, 26 October 2017 04:04:50 UTC+1, David Rice wrote:
>>>
>>> Can I ask why you want to do that? Even if you got it to work, the 
>>>  agents would be stepping all over each other. What are you trying to 
>>> accomplish? Maybe we can help you figur out a different approach. 
>>>
>>> On Wed, Oct 25, 2017 at 5:22 PM Raghu Gattapur <[email protected]> 
>>> wrote:
>>>
>>>> Tried settings -Dagent.work.dir as suggested here 
>>>> https://github.com/gocd/gocd/pull/2754 but no success.
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "go-cd" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "go-cd" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to