Config the number of containers to keep
By default we keep 5 containers around for rollback. The containers don't take much space, but the images for them can. Make the number of containers to retain configurable, either in the config with the `retain_containers` setting on the command line with the `--retain` option.
This commit is contained in:
@@ -127,6 +127,10 @@ class Kamal::Configuration
|
||||
raw_config.require_destination
|
||||
end
|
||||
|
||||
def retain_containers
|
||||
raw_config.retain_containers || 5
|
||||
end
|
||||
|
||||
|
||||
def volume_args
|
||||
if raw_config.volumes.present?
|
||||
@@ -218,7 +222,7 @@ class Kamal::Configuration
|
||||
|
||||
|
||||
def valid?
|
||||
ensure_destination_if_required && ensure_required_keys_present && ensure_valid_kamal_version
|
||||
ensure_destination_if_required && ensure_required_keys_present && ensure_valid_kamal_version && ensure_retain_containers_valid
|
||||
end
|
||||
|
||||
def to_h
|
||||
@@ -291,6 +295,12 @@ class Kamal::Configuration
|
||||
true
|
||||
end
|
||||
|
||||
def ensure_retain_containers_valid
|
||||
raise ArgumentError, "Must retain at least 1 container" if retain_containers < 1
|
||||
|
||||
true
|
||||
end
|
||||
|
||||
|
||||
def role_names
|
||||
raw_config.servers.is_a?(Array) ? [ "web" ] : raw_config.servers.keys.sort
|
||||
|
||||
Reference in New Issue
Block a user