Add a minimum version setting

Allow a minimum MRSK version to be specified in the config.
This commit is contained in:
Donal McBreen
2023-06-15 14:42:58 +01:00
parent f0301d2007
commit 98c12a254e
3 changed files with 40 additions and 1 deletions

View File

@@ -165,8 +165,12 @@ class Mrsk::Configuration
raw_config.readiness_delay || 7
end
def minimum_version
raw_config.minimum_version
end
def valid?
ensure_required_keys_present && ensure_env_available
ensure_required_keys_present && ensure_env_available && ensure_valid_mrsk_version
end
@@ -229,6 +233,15 @@ class Mrsk::Configuration
true
end
def ensure_valid_mrsk_version
if minimum_version && Gem::Version.new(minimum_version) > Gem::Version.new(Mrsk::VERSION)
raise ArgumentError, "Current version is #{Mrsk::VERSION}, minimum required is #{minimum_version}"
end
true
end
def role_names
raw_config.servers.is_a?(Array) ? [ "web" ] : raw_config.servers.keys.sort
end