Class: Avm::Instances::Data::FilesUnit
- Inherits:
-
Unit
show all
- Defined in:
- lib/avm/instances/data/files_unit.rb
Constant Summary
collapse
- EXTENSION =
'.tar.gz'
Instance Method Summary
collapse
Methods inherited from Data::Unit
#dump, #dump_to_directory, #extension, #load, #load_from_directory, #name
Instance Method Details
#clear_files ⇒ Object
36
37
38
39
40
|
# File 'lib/avm/instances/data/files_unit.rb', line 36
def clear_files
infom "Removing all files under #{files_path}..."
instance_command('mkdir', '-p', files_path).execute!
instance_command('find', files_path, '-mindepth', 1, '-delete').execute!
end
|
#dump_command ⇒ Object
28
29
30
|
# File 'lib/avm/instances/data/files_unit.rb', line 28
def dump_command
instance_command('tar', '-czf', '-', '-C', files_path, '.')
end
|
#files_path ⇒ Pathname
23
24
25
26
|
# File 'lib/avm/instances/data/files_unit.rb', line 23
def files_path
fs_path_subpath
.expand_path(instance.read_entry(::Avm::Instances::EntryKeys::INSTALL_PATH))
end
|
#installation_files_data ⇒ Struct(:key, :subpath)?
43
44
45
46
47
|
# File 'lib/avm/instances/data/files_unit.rb', line 43
def installation_files_data
return nil unless fs_path_subpath.relative?
::Struct.new(:key, :subpath).new(fs_path_subpath.basename.to_path, fs_path_subpath)
end
|
#instance_command(*args) ⇒ EacRubyUtils::Envs::Command
50
51
52
53
|
# File 'lib/avm/instances/data/files_unit.rb', line 50
def instance_command(*args)
args = ['sudo', '-Hu', sudo_user] + args if sudo_user.present?
instance.host_env.command(*args).chdir('/')
end
|
#load_command ⇒ Object
32
33
34
|
# File 'lib/avm/instances/data/files_unit.rb', line 32
def load_command
instance_command('tar', '-xzf', '-', '-C', files_path)
end
|
#sudo_user ⇒ String?
56
57
58
|
# File 'lib/avm/instances/data/files_unit.rb', line 56
def sudo_user
options[OPTION_SUDO_USER]
end
|