Merge pull request #1503 from basecamp/disallow-options-restart

Ensure that the restart policy is unless-stopped
This commit is contained in:
Donal McBreen
2025-04-17 15:16:54 +01:00
committed by GitHub
5 changed files with 25 additions and 0 deletions

View File

@@ -168,4 +168,10 @@ class Kamal::Configuration::Validator
unknown_keys.reject! { |key| extension?(key) } if allow_extensions?
unknown_keys_error unknown_keys if unknown_keys.present?
end
def validate_docker_options!(options)
if options
error "Cannot set restart policy in docker options, unless-stopped is required" if options["restart"]
end
end
end

View File

@@ -5,5 +5,7 @@ class Kamal::Configuration::Validator::Accessory < Kamal::Configuration::Validat
if (config.keys & [ "host", "hosts", "roles" ]).size != 1
error "specify one of `host`, `hosts` or `roles`"
end
validate_docker_options!(config["options"])
end
end

View File

@@ -6,6 +6,7 @@ class Kamal::Configuration::Validator::Role < Kamal::Configuration::Validator
validate_servers!(config)
else
super
validate_docker_options!(config["options"])
end
end
end