Загрузка переменных из отдельного файла для Rake - PullRequest
1 голос
/ 15 апреля 2011

Я пытаюсь попасть в Ruby / Rake.Я подумал, что было бы неплохо отделить некоторую конфигурацию от Rakefile в файле с именем configuration.Этот файл имеет следующее содержимое:

email="nobody@nowhere.com"
password="somepassword"
proxy_server="someproxy.com:8080"
puts "config loaded"

Затем в свой Rakefile я загружаю файл конфигурации с помощью

load 'configuration'

и использую переменные, определенные позже, например:

task :dummy do
    sh = "echo #{proxy_server}" 
end

Но тогда я получаю сообщение о том, что переменная не определена:

rake aborted!
undefined local variable or method `proxy_server' for #<Object:0xb783595c>

Как получить доступ к переменным конфигурации, определенным в файле конфигурации?

1 Ответ

1 голос
/ 15 апреля 2011

Видимость: переменные из файла конфигурации не видны в скрипте, который его выполнил.Вам необходимо установить общий контекст, например, используя глобальные переменные (даже если глобальные перемены являются злыми :-)), например:

$proxy_server="someproxy.com:8080"

, а затем

task :dummy do
    sh = "echo #{$proxy_server}" 
end

Но так как файлы rake являютсяСами рубины, зачем использовать отдельный файл конфигурации в первую очередь?Если вам нужно изменить конфигурацию, вы можете также отредактировать файл rake.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...