Thank you so much for the detailed input. I will give both the options a
shot and see which one gets my task done!
On Wed, Feb 8, 2012 at 3:10 PM, Rafa García <conta
...@rafagarcia.net> wrote:
> Hi Noman,
> You can do it using shellscript:
> task :check_tomcat_status, :roles => :app do
> run "#{sudo} /usr/local/sbin/check_tomcat_status.sh"
> run "sleep 15s"
> end
> Being check_tomcat_status.sh a shell script that check, i.e., if service
> tomcat6 exists and do the work else do the work with tomcat5
> Another option could be define the role with tomcat5 and tomcat6
> modifier:
> role :app, "127.0.0.1", :tomcat5 => true
> role :app, "127.0.0.2", :tomcat6 => true
> Later define the task:
> task :check_tomcat_status, :roles => :app do
> run "#{sudo} /sbin/service tomcat5 status", :only => {:tomcat5 => true}
> run "#{sudo} /sbin/service tomcat6 status", :only => {:tomcat6 => true}
> run "sleep 15s"
> end
> Regards
> Note: The sudo use as run command is deprecated, last paragraph<https://github.com/capistrano/capistrano/wiki/2.x-DSL-Action-Invokati...>
> [1]
> [1]
> https://github.com/capistrano/capistrano/wiki/2.x-DSL-Action-Invokati...
> 2012/2/8 Noman Amir Jamil <n.amir.ja...@gmail.com>
>> Hi All,
>> I was wondering if it is possible to include a conditional check in task
>> definition. For example, I have a task defined:
>> task :check_tomcat6_status, :roles => :app do
>> sudo "/sbin/service tomcat6 status"
>> run "sleep 15s"
>> end
>> I want to introduce a conditional hosts check in it, like:
>> if :hosts = host1 then
>> sudo "/sbin/service tomcat5 status"
>> else
>> sudo "/sbin/service tomcat6 status"
>> fi
>> run "sleep 15s"
>> end
>> Can someone help me with the correct syntax for this scenario?
>> Thanks
>> Noman A.
>> --
>> * 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+unsubscribe@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+unsubscribe@googlegroups.com For more options, visit this
> group at http://groups.google.com/group/capistrano?hl=en