Hi No code atm I'm afraid but I will share some ideas/requirements/ thoughts....
We do a state check of the application before removing it from the cluster which we can use to compare with after new deployment. We have a level1 and level2 check for applications. Level1 check functional deployment in tomcat, which basically checks the application server. Level2 actually submits a request to check complete infrastructure functionality and parses xml( that is the intend anyway still needs to be written) We want to build in a failure percentage that if you have 10 servers and 1 fails after 5 deployments, deployment should continue until in reaches a failure percentage, say 20%. The modjk tasks I have written that act as our loadbalancers actually works quite well, once I have extended it a bit more I will gladly share the code. I think sequential deploy will need some generic loadbalancer/cluster tasks build-in. At the moment we use something like the following: run "wget --quiet -O - --connect-timeout=1 --timeout=1 --tries=1 'http://$CAPISTRANO:HOST$/jkserver-status?cmd=update&from=list&w=# {modjk_loadbalancergroup}&sw=#{current_tomcat}&wa=1&wf=1&wn=# {current_tomcat}&wr=&wc=&wd=0' 1>&2>/dev/null" maybe a wrapper to allow easier/simplified http interaction with put and get might be usefull. (perhaps even some xml manipulation) Anyway just some random thoughts. Regards On Feb 16, 3:44 pm, Jamis Buck <[email protected]> wrote: > On 2/16/09 8:37 AM, Gerhardus Geldenhuis wrote: > > > Thanks, I am going to try that right now. > > > How do you feel about a "sequential" extention to capistrano? Any > > thoughts on how it could fit in with the current structure? > > I think that'd be great. Even as something for Capistrano core. I've > needed, and others have needed it, so I'm sure it'd be useful. > > In general, I'd really love to get away from the ROLES, HOSTS, and > HOSTFILTER environment variables. I just don't know where to go instead > of those, and honestly, I haven't spent much time thinking about it. > > If you have any ideas, please feel free to hack on them and see what you > come up with. > > - Jamis > > > > > Regards > > > On Feb 16, 3:16 pm, Jamis Buck <[email protected]> wrote: > >> If you want subtasks to use a particular host, you need to set the HOSTS > >> or HOSTFILTER environment variables. E.g. > > >> find_servers(...).each do |server| > >> ENV['HOSTFILTER'] = server.host > >> sub.task.here > >> ENV['HOSTFILTER'] = nil > >> end > > >> It's extremely ugly and hacky and I don't like it, but there's not > >> currently another way to do it. > > >> - Jamis > > >> On 2/16/09 5:09 AM, Gerhardus Geldenhuis wrote: > > >>> I have also put the relevant code onhttp://pastie.org/390600 > >>> Regards --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
