Как сделать один публичный / .htaccess на сцену, используя capistrano-ext - PullRequest
1 голос
/ 25 января 2011

Я использую многоступенчатый Capistrano (capistrano-ext) для развертывания в стадии подготовки или производства.

Проблема в том, что я использую Passenger в своем общем хостинге, и мне нужно указать PassengerAppRoot в файле public/.htaccess. Очевидно, это отличается между этапами.

Как мне сохранить разные "сценические версии" этого файла?

1 Ответ

0 голосов
/ 01 марта 2011

Я не использовал capistrano-ext, но я предполагаю, что где-то в вашем Capfile у вас будет сцена в качестве переменной. Давайте предположим, что это переменная «stage». Предположим также, что у вас есть две разные версии, зарегистрированные где-то в вашем коде (public / .htaccess- {production | staging})

Вы можете настроить задачу для символической ссылки (или копирования) нужного файла после развертывания:

desc 'Set up a stage-appropriate .htaccess file'
task 'update_htaccess' do
  run "ln -s #{release_path}/public/.htaccess-#{stage} #{release_path}/public/.htaccess"
end

after "deploy:update_code", "update_htaccess"
...