10

アプリケーションをデプロイまたは構築するためのタスクを含む Rakefile があります。この Rakefile は、本番環境と開発環境の両方で使用されます。

build環境が何であるかを知るタスクが欲しいです。実行時にタスクにパラメーターを渡さずにこれを行うことはできますか? 環境変数でそれを行うことはできますか?

開発中は、タスクを次のようにする必要があります。

task :build => :clean do
  compass compile -e development
  jekyll
end

本番環境では、次のようになります。

task :build => :clean do
  compass compile -e production
  jekyll
end
4

1 に答える 1

22

はい、環境変数を使用できます。スケルトンの実装は次のとおりです。

task :build do |t, args|
  puts "Current env is #{ENV['RAKE_ENV']}"
end

使用法:

% rake build
Current env is 

% RAKE_ENV=development rake build
Current env is development
于 2013-01-22T11:06:26.927 に答える