Rails Capistrano 3 – как поделиться файлом production.log в общей папке Capistrano?

Я использую Capistrano 3 для развертывания с моим приложением Rails. Проблема в том, что каждый раз, когда я развертываю свое приложение на сервере, файл ./log/production.log сбрасывается. Я слышал, что файл production.log можно поместить в общую папку и добавлять при каждом развертывании.

Я думал, что это было сделано по умолчанию Capistrano, но, видимо, не для меня :(

Есть предположения?

Спасибо!


person Romain    schedule 05.09.2014    source источник


Ответы (1)


В вашем config/deploy.rb вам нужна строка, подобная этой:

set :linked_dirs, %w{log public/system}

Это укажет capistrano на символическую ссылку log и public/system в общий каталог при развертывании.

person Philip Hallstrom    schedule 05.09.2014
comment
Круто, это именно то, что я хотел. Но почему public/system у меня нет этой папки? - person Romain; 06.09.2014
comment
А, это как раз то, что у меня есть. В продакшене мы храним ассеты на S3. В постановке мы этого не делаем, они попадают в общедоступные/системные/подпапки/папки. Поэтому мы создаем символическую ссылку, чтобы его не сдуло во время развертывания промежуточной версии. - person Philip Hallstrom; 06.09.2014
comment
Хорошо. Мне также пришлось добавить папку public/assets в папку linked_dirs из-за этого github.com/capistrano/rails/ вопросы/52 - person Romain; 06.09.2014