1
0
Fork 0
mirror of https://github.com/capistrano/capistrano synced 2023-03-27 23:21:18 -04:00

Merge pull request #629 from capistrano/bug_fix/672

Shoot at fixing #627.
This commit is contained in:
Lee Hambley 2013-09-01 04:16:44 -07:00
commit 5f3a2b67ff
2 changed files with 10 additions and 3 deletions

View file

@ -14,6 +14,7 @@ en = {
written_file: 'create %{file}',
question: 'Please enter %{key}: |%{default_value}|',
keeping_releases: 'Keeping %{keep_releases} of %{releases} deployed releases on %{host}',
no_old_releases: 'No old releases (keeping newest %{keep_releases}) on %{host}',
linked_file_does_not_exist: 'linked file %{file} does not exist on %{host}',
mirror_exists: "The repository mirror is at %{at}",
revision_log_message: 'Branch %{branch} deployed as release %{release} by %{user}',

View file

@ -129,9 +129,15 @@ namespace :deploy do
releases = capture(:ls, '-x', releases_path).split
if releases.count >= fetch(:keep_releases)
info t(:keeping_releases, host: host.to_s, keep_releases: fetch(:keep_releases), releases: releases.count)
directories = (releases - releases.last(fetch(:keep_releases))).map { |release|
releases_path.join(release) }.join(" ")
execute :rm, '-rf', directories
directories = (releases - releases.last(fetch(:keep_releases)))
if directories.any?
directories_str = directories.map do |release|
releases_path.join(release)
end.join(" ")
execute :rm, '-rf', directories_str
else
info t(:no_old_releases, host: host.to_s, keep_releases: fetch(:keep_releases))
end
end
end
end