Geraudus, Try pasting your code in Pastie, and linking it -- that was we can read it and maybe help... post the current state of the method, and we'll see what we can do..
- Lee 2009/2/3 Gerhardus Geldenhuis <[email protected]> > > I solved my assignment problem with: > set :current_tomcat, "#{server.host}" > > However I would still be interested in possible better solutions. > > Regards > > On Feb 3, 1:15 pm, Gerhardus Geldenhuis > <[email protected]> wrote: > > Hi > > I am struggling to find a elegant solution for the following problem: > > We have multiple apache servers that load balance across the same set > > of tomcat app servers. > > Thus if you update an app server you have to disable it in multiple > > places. > > > > My code: > > > > namespace :modjk do > > task :disablenode, :roles => :apacluster do > > 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" > > > > # this does not work atm as I can't get the current_tomcat variable > > set > > end > > > > and in my stage file I have the following: > > role :appservers, "longtct02c", "longtct02d" > > role :apacluster, "longapa02c" > > #role :apacluster, "longapa02c", "longapa02d" > > > > set :app_type, "gta-jcbs-xml" > > set :modjk_loadbalancergroup, "xml-lb" > > set :test_url, "localhost:8080/gta-jcbs-xml/buildInfo.jsp" > > set :test_url_result_string, "Build Information" > > > > task :staggered_deploy do > > find_servers(:roles => :appservers).each do |server| > > run "uname -a", :hosts => server #just for id purposes. > > # A possible solution but can't get assignment to work yet. > > # set :current_tomcat, "$CAPISTRANO:HOST$" > > modjk.disablenode > > end > > end > > > > my logic was that when iterating through the list of servers I would > > just call disablenode which will then only run on the apacluster list > > of servers. This works great and keeps the code clean however I need > > to pass a parameter in my wget statement to enable to current tomcat > > node that I am looping through in the staggered_deploy task. > > > > My set statement does not work yet, I am trying to figure out the > > correct syntax, and when I get it working I am not sure it will behave > > as I expect by changing the variable everytime it loops. If there is a > > better way of approaching the problem I would appreciate any thoughts. > > The abbility to pass an parameter to a task would help a lot. > > > > Regards > > > --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
