storage manager: refactor base_dir option.

Fix it so the `base_dir` option is only required by subclasses that
actually use it. The StorageManager::Mirror class doesn't use it.
This commit is contained in:
evazion
2021-10-27 20:13:36 -05:00
parent 4095d14f2a
commit f593828bb9
6 changed files with 46 additions and 19 deletions

View File

@@ -10,10 +10,11 @@ class StorageManager::SFTP < StorageManager
non_interactive: true
}
attr_reader :hosts, :ssh_options
attr_reader :hosts, :ssh_options, :base_dir
def initialize(*hosts, ssh_options: {}, **options)
def initialize(*hosts, base_dir: nil, ssh_options: {}, **options)
@hosts = hosts
@base_dir = base_dir.to_s
@ssh_options = DEFAULT_SSH_OPTIONS.merge(ssh_options)
super(**options)
end
@@ -73,4 +74,8 @@ class StorageManager::SFTP < StorageManager
end
end
end
def full_path(path)
File.join(base_dir, path)
end
end