Module: Bitferry::Rclone
Defined Under Namespace
Classes: Copy, Decrypt, Encrypt, Encryption, Equalize, Synchronize, Task, Update
Constant Summary
collapse
- ROUTE =
{
encrypt: Encrypt,
decrypt: Decrypt
}
Class Method Summary
collapse
Methods included from Logging
log, log
Class Method Details
.exec(*args) ⇒ Object
634
635
636
637
638
639
640
641
642
643
644
|
# File 'lib/bitferry.rb', line 634
def self.exec(*args)
cmd = [executable] + args
log.debug(cmd.collect(&:shellescape).join(' '))
stdout, status = Open3.capture2(*cmd)
unless status.success?
msg = "rclone exit code #{status.to_i}"
log.error(msg)
raise RuntimeError, msg
end
stdout.strip
end
|
.executable ⇒ Object
631
|
# File 'lib/bitferry.rb', line 631
def self.executable = @executable ||= (rclone = ENV['RCLONE']).nil? ? 'rclone' : rclone
|
.obscure(plain) ⇒ Object
647
|
# File 'lib/bitferry.rb', line 647
def self.obscure(plain) = exec('obscure', '--', plain)
|
.reveal(token) ⇒ Object
650
|
# File 'lib/bitferry.rb', line 650
def self.reveal(token) = exec('reveal', '--', token)
|