@@ -9,9 +9,6 @@ class Kamal::Cli::App < Kamal::Cli::Base
|
||||
|
||||
# Assets are prepared in a separate step to ensure they are on all hosts before booting
|
||||
on(KAMAL.hosts) do
|
||||
execute *KAMAL.auditor.record("Tagging #{KAMAL.config.absolute_image} as the latest image"), verbosity: :debug
|
||||
execute *KAMAL.app.tag_current_image_as_latest
|
||||
|
||||
KAMAL.roles_on(host).each do |role|
|
||||
Kamal::Cli::App::PrepareAssets.new(host, role, self).run
|
||||
end
|
||||
@@ -22,6 +19,11 @@ class Kamal::Cli::App < Kamal::Cli::Base
|
||||
Kamal::Cli::App::Boot.new(host, role, version, self).run
|
||||
end
|
||||
end
|
||||
|
||||
on(KAMAL.hosts) do |host|
|
||||
execute *KAMAL.auditor.record("Tagging #{KAMAL.config.absolute_image} as the latest image"), verbosity: :debug
|
||||
execute *KAMAL.app.tag_latest_image
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -138,7 +140,10 @@ class Kamal::Cli::App < Kamal::Cli::Base
|
||||
roles = KAMAL.roles_on(host)
|
||||
|
||||
roles.each do |role|
|
||||
cli.send(:stale_versions, host: host, role: role).each do |version|
|
||||
versions = capture_with_info(*KAMAL.app(role: role).list_versions, raise_on_non_zero_exit: false).split("\n")
|
||||
versions -= [ capture_with_info(*KAMAL.app(role: role).current_running_version, raise_on_non_zero_exit: false).strip ]
|
||||
|
||||
versions.each do |version|
|
||||
if stop
|
||||
puts_by_host host, "Stopping stale container for role #{role} with version #{version}"
|
||||
execute *KAMAL.app(role: role).stop(version: version), raise_on_non_zero_exit: false
|
||||
@@ -274,18 +279,7 @@ class Kamal::Cli::App < Kamal::Cli::Base
|
||||
version.presence
|
||||
end
|
||||
|
||||
def stale_versions(host:, role:)
|
||||
versions = nil
|
||||
on(host) do
|
||||
versions = \
|
||||
capture_with_info(*KAMAL.app(role: role).list_versions, raise_on_non_zero_exit: false)
|
||||
.split("\n")
|
||||
.drop(1)
|
||||
end
|
||||
versions
|
||||
end
|
||||
|
||||
def version_or_latest
|
||||
options[:version] || "latest"
|
||||
options[:version] || KAMAL.config.latest_tag
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user