diff --git a/lib/foreman/cli.rb b/lib/foreman/cli.rb index f7dc59b..8cdaf57 100644 --- a/lib/foreman/cli.rb +++ b/lib/foreman/cli.rb @@ -79,7 +79,10 @@ private ###################################################################### end def engine - @engine ||= Foreman::Engine.new(procfile, options) + root = File.expand_path(File.dirname(procfile)) + env = File.expand_path(File.join(root, ".env")) + @engine ||= Foreman::Engine.new(procfile, options.merge({:app_root => root, + :env => env})) end def procfile diff --git a/lib/foreman/engine.rb b/lib/foreman/engine.rb index 00766f1..7ed568f 100644 --- a/lib/foreman/engine.rb +++ b/lib/foreman/engine.rb @@ -22,7 +22,7 @@ class Foreman::Engine def initialize(procfile, options={}) @procfile = Foreman::Procfile.new(procfile) - @directory = options[:app_root] || File.expand_path(File.dirname(procfile)) + @directory = options[:app_root] @options = options.dup @environment = read_environment_files(options[:env]) @output_mutex = Mutex.new @@ -214,7 +214,6 @@ private ###################################################################### environment.merge!(Foreman::Engine.read_environment(filename)) end - environment.merge!(Foreman::Engine.read_environment(".env")) unless filenames environment end end