Обычно при использовании capistrano я вручную удаляю старые выпуски из развернутого приложения. Я понимаю, что запускать можно, cap deploy:cleanup
но остается 5 релизов. Это по прямому назначению? Есть ли другой способ очистить старые выпуски до одного предыдущего развертывания?
capistrano
мистифицировать
источник
источник
Ответы:
Вы можете использовать эту
:keep_releases
переменную, чтобы переопределить значение по умолчанию 5. Проверьте это .источник
after
ловушку. Вызов его напрямую показывает ошибки ... Я понял это, когда у меня начинало заканчиваться дисковое пространство.Вы можете сделать это автоматически, установив это в своем deploy.rb
Раньше (я точно не знаю, в какой версии) этот обратный вызов был по умолчанию, но позже разработчик решил оставить это на усмотрение пользователя. В capistrano 3 он был снова добавлен в поток развертывания по умолчанию.
источник
deploy:cleanup
как часть процесса развертывания .Если вы хотите удалить все выпуски, кроме последних 3, например, вы можете запустить:
источник
optionParser::InvalidOption: invalid option: s
У меня была похожая проблема. Я хотел сохранить 5 выпусков для нормального развертывания, но в определенных ситуациях мне нужно было удалить все предыдущие выпуски.
Я смог сделать это с помощью специальной задачи. Создайте файл
lib/capistrano/tasks/cleanup.rake
и добавьте следующий код.Для запуска используйте
bundle exec cap staging cleanup_all
илиcap staging cleanup_all
источник