Gotchya, I understand now. Here's another way that could work
Put everything back to working in parallel with no max_hosts Create a new task deploy:rolling task :rolling do orig_servers = find_servers(:roles => :servers) orig_servers.each do |s| roles[:servers].reset server s.host, :servers deploy.default end end The intent is to use the roles but only put one through the deploy at a time, if one breaks; it gets rolled back. On Jan 3, 2012, at 9:47 PM, Haim Ashkenazi <haim.ashken...@gmail.com> wrote: > Hi Donovan, > > On Jan 4, 6:21 am, Donovan Bray <donno...@gmail.com> wrote: >> Post your code via gist so I can see what your trying. > Here are 2 samples. working example (which cause duplication) and > desired example. The output is included: > > https://gist.github.com/1558678 > > Thanks > >> >> On Jan 3, 2012, at 12:01 PM, Haim Ashkenazi <haim.ashken...@gmail.com> wrote: >> >> >> >> >> >> >> >>> Hi Donovan, >> >>> On Jan 3, 6:45 pm, Donovan Bray <donno...@gmail.com> wrote: >>>> Put the start and stop task contents in methods and call those methods >>>> from within the start stop tasks; then you can create the restart method >>>> by calling the requisite start stop methods. >> >>>> Since the commands in the method will always be running in the task that >>>> was directly invoked it should act the way you need. >>> This is what I first thought, but it seems that It's not the case (At >>> least not in my tests, I'll be happy to be wrong). If I limit the task >>> with max_host => 1, it does run every command consecutively but in a >>> wrong way: >> >>> - first they will consecutively stop the load balancer on all servers >>> in the role >>> - then they will consecutively stop the app on all servers in the role >>> - (by not you get the point). >> >>> This is not a rolling deploy :( >> >>> The only way I found around it is by passing the :hosts key as option >>> to the 'run' command. Am I wrong about it? >> >>>> You need to be careful with naming as methods will take precedence over >>>> tasks when you use the namespace to call them. >>> Thanks for the info >> >>> Bye >>> -- >>> Haim >> > > Haim > > -- > * You received this message because you are subscribed to the Google Groups > "Capistrano" group. > * To post to this group, send email to capistrano@googlegroups.com > * To unsubscribe from this group, send email to > capistrano+unsubscr...@googlegroups.com For more options, visit this group at > http://groups.google.com/group/capistrano?hl=en -- * You received this message because you are subscribed to the Google Groups "Capistrano" group. * To post to this group, send email to capistrano@googlegroups.com * To unsubscribe from this group, send email to capistrano+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/capistrano?hl=en