rake task variable

I have two Rake tasks under the same namespace like following:

namespace :db do
  task :first_task => :environment do
         server_name='myserver'
         connect_to(server_name)
  end

  task :second_task => :environment do
          server_name='myserver'
          do_something_with(server_name)
  end
end

As you see, both tasks are under the same namespace and both tasks use server_name='myserver' constant variable.

It really looks ugly to define the server_name variable twice under the same namespace, how can I have one place defining this variable so both tasks can use it?

Answers


Try this:

namespace :db do
  server_name='myserver'
  task :first_task => :environment do
    connect_to(server_name)
  end

  task :second_task => :environment do
    do_something_with(server_name)
  end
end

Namespaces have access to variables declared before their scope.


Need Your Help

Play 2.0 and IDEA. Missed javaCore, javaJdbc, javaEbean dependencies

java scala playframework intellij-idea playframework-2.0

I created new play 2.1 Java project using Intellij IDEA, and when I open Build.scala file to manage dependencies I see that IDEA cannot resolve some dependencies and play.Project class. But project