class

Meridian::Commands::Check

Inherits Meridian::Commands::Base < Reference < Object

Constants

DEFAULT_LOCAL_COMMAND_PROBE = ->(command : String) do !Process.find_executable(command).nil? end

Same primitive the transfer classes use, so the probe cannot disagree with the ensure_local_dependency! call it is predicting.

DEFAULT_LOCAL_FILE_PROBE = ->(path : String) do (File.file?(path)) && (File::Info.readable?(path)) end

Deploy reads the source; readable directories and special files fail.

DEFAULT_LOCAL_IMAGE_PROBE = ->(image : String) do begin (Process.run("podman", ["image", "exists", image])).success? rescue false end end
EMPTY_ACCESSORIES = {} of String => Config::AccessoryConfig
MIN_PODMAN_MAJOR = 4
MIN_PODMAN_MINOR = 4
SSH_UNITS = ["ssh.socket", "ssh.service", "sshd.socket", "sshd.service"] of ::String

Constructors

new(config : Config::DeployConfig, ssh_executor : SSH::Executor = SSH::Executor.new, output : IO = STDOUT, error : IO = STDERR, audit_logger : Meridian::Audit::Logger | Nil = nil, local_image_probe : LocalImageProbe | Nil = nil, local_file_probe : LocalFileProbe | Nil = nil, local_command_probe : LocalCommandProbe | Nil = nil)
Source

Instance methods

run(targets : Array(CLI::TargetSelector::Target) | Nil = nil) : Bool
Source

Nested types