это, вероятно, вопрос рубинового новичка. У меня есть несколько библиотек и приложений, которые мне нужно развернуть на несколько разных хостов. Все приложения и библиотеки будут иметь общие настройки для этих хостов. имя хоста, базы данных сервера/пользователя/пасс и т.д.Capistrano: Как включить общие настройки в несколько файлов проекта deploy.rb
Моя цель состоит в том, чтобы сделать что-то вроде:
cap host1 stage deploy
cap host2 stage deploy
cap host1 prod deploy
# ...
Мой вопрос заключается в том, как вы включаете эти общие настройки во всех ваших deploy.rb файлов? Более конкретно, я хочу, чтобы создать радиоканал файл, который может включать в себя, что есть некоторые общие настройки и несколько конкретных хостов определения задач:
set :use_sudo, false
# set some other options
task :host1 do
role :app, "host1.example.com"
role :web, "host1.example.com"
role :db, "host1.example.com", :primary => true
set :rodb_host, "dbhost"
set :rodb_user, "user"
set :rodb_pass, "pass"
set :rodb_name, "db"
end
task :host2 do
#...
end
deploy.task :carsala do
transaction do
setup
update_code
symlink
end
end
А затем «включить» этот файл во всех моем deploy.rb файлов где Я определяю этап, prod и т. Д. И при необходимости заменяю любые «общие» параметры конфигурации. Мы ценим любые предложения. Я пробовал несколько разных вещей, но я получаю ошибки от кепки для всех них.
Edit: Я пытался
require 'my_module'
Но я получаю ошибки, жалующихся на неопределенный объект задачи.
Я попытался это, но я получаю ошибки, жалующиеся на объект задачи, который не определяется. Вам нужно что-нибудь в верхней части 'my_extension'? – drsnyder 2008-10-30 18:15:53