Extract Containers and Images concerns
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
class Kamal::Commands::App < Kamal::Commands::Base
|
||||
include Assets, Cord, Execution
|
||||
include Assets, Containers, Cord, Execution, Images
|
||||
|
||||
ACTIVE_DOCKER_STATUSES = [ :running, :restarting ]
|
||||
|
||||
@@ -85,42 +85,6 @@ class Kamal::Commands::App < Kamal::Commands::Base
|
||||
end
|
||||
|
||||
|
||||
def list_containers
|
||||
docker :container, :ls, "--all", *filter_args
|
||||
end
|
||||
|
||||
def list_container_names
|
||||
[ *list_containers, "--format", "'{{ .Names }}'" ]
|
||||
end
|
||||
|
||||
def remove_container(version:)
|
||||
pipe \
|
||||
container_id_for(container_name: container_name(version)),
|
||||
xargs(docker(:container, :rm))
|
||||
end
|
||||
|
||||
def rename_container(version:, new_version:)
|
||||
docker :rename, container_name(version), container_name(new_version)
|
||||
end
|
||||
|
||||
def remove_containers
|
||||
docker :container, :prune, "--force", *filter_args
|
||||
end
|
||||
|
||||
|
||||
def list_images
|
||||
docker :image, :ls, config.repository
|
||||
end
|
||||
|
||||
def remove_images
|
||||
docker :image, :prune, "--all", "--force", *filter_args
|
||||
end
|
||||
|
||||
def tag_current_image_as_latest
|
||||
docker :tag, config.absolute_image, config.latest_image
|
||||
end
|
||||
|
||||
|
||||
def make_env_directory
|
||||
make_directory role_config.host_env_directory
|
||||
end
|
||||
|
||||
23
lib/kamal/commands/app/containers.rb
Normal file
23
lib/kamal/commands/app/containers.rb
Normal file
@@ -0,0 +1,23 @@
|
||||
module Kamal::Commands::App::Containers
|
||||
def list_containers
|
||||
docker :container, :ls, "--all", *filter_args
|
||||
end
|
||||
|
||||
def list_container_names
|
||||
[ *list_containers, "--format", "'{{ .Names }}'" ]
|
||||
end
|
||||
|
||||
def remove_container(version:)
|
||||
pipe \
|
||||
container_id_for(container_name: container_name(version)),
|
||||
xargs(docker(:container, :rm))
|
||||
end
|
||||
|
||||
def rename_container(version:, new_version:)
|
||||
docker :rename, container_name(version), container_name(new_version)
|
||||
end
|
||||
|
||||
def remove_containers
|
||||
docker :container, :prune, "--force", *filter_args
|
||||
end
|
||||
end
|
||||
13
lib/kamal/commands/app/images.rb
Normal file
13
lib/kamal/commands/app/images.rb
Normal file
@@ -0,0 +1,13 @@
|
||||
module Kamal::Commands::App::Images
|
||||
def list_images
|
||||
docker :image, :ls, config.repository
|
||||
end
|
||||
|
||||
def remove_images
|
||||
docker :image, :prune, "--all", "--force", *filter_args
|
||||
end
|
||||
|
||||
def tag_current_image_as_latest
|
||||
docker :tag, config.absolute_image, config.latest_image
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user