class Capistrano::Template::Helpers::Uploader
rubocop: disable Metrics/ClassLength
Attributes
digest[RW]
digest_cmd[RW]
full_to_path[RW]
group[RW]
group_test_cmd[RW]
io[RW]
mode[RW]
mode_test_cmd[RW]
remote_handler[RW]
user[RW]
user_test_cmd[RW]
Public Class Methods
new(full_to_path, remote_handler, mode: 0640, mode_test_cmd: nil, user: nil, user_test_cmd: nil, group: nil, group_test_cmd: nil, digest: nil, digest_cmd: nil, io: nil )
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 21 def initialize(full_to_path, remote_handler, mode: 0640, mode_test_cmd: nil, user: nil, user_test_cmd: nil, group: nil, group_test_cmd: nil, digest: nil, digest_cmd: nil, io: nil ) self.remote_handler = remote_handler self.full_to_path = full_to_path self.digest_cmd = digest_cmd self.mode = mode self.mode_test_cmd = mode_test_cmd self.user = user self.user_test_cmd = user_test_cmd self.group = group self.group_test_cmd = group_test_cmd self.io = io self.digest = digest end
Public Instance Methods
call()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 48 def call upload_as_file set_mode set_user set_group end
file_changed?()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 101 def file_changed? !__check__(digest_cmd) end
group_changed?()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 113 def group_changed? group && __check__(group_test_cmd) end
host()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 68 def host remote_handler.host end
permission_changed?()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 105 def permission_changed? __check__(mode_test_cmd) end
set_group()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 91 def set_group if group_changed? remote_handler.info "group changed for file #{full_to_path} on #{host} set new group" remote_handler.execute 'sudo', 'chgrp', group, full_to_path else remote_handler.info "group not changed for file #{full_to_path} on #{host}" end end
set_mode()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 72 def set_mode if permission_changed? remote_handler.info "permission changed for file #{full_to_path} on #{host} set new permissions" remote_handler.execute 'chmod', octal_mode_str, full_to_path else remote_handler.info "permission not changed for file #{full_to_path} on #{host}" end end
set_user()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 81 def set_user if user_changed? remote_handler.info "user changed for file #{full_to_path} on #{host} set new user" remote_handler.execute 'sudo', 'chown', user, full_to_path else remote_handler.info "user not changed for file #{full_to_path} on #{host}" end end
upload_as_file()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 55 def upload_as_file if file_changed? remote_handler.info "copying to: #{full_to_path}" # just in case owner changed remote_handler.execute 'rm', '-f', full_to_path remote_handler.upload! io, full_to_path else remote_handler.info "File #{full_to_path} on host #{host} not changed" end end
user_changed?()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 109 def user_changed? user && __check__(user_test_cmd) end
Protected Instance Methods
__check__(*args)
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 119 def __check__(*args) remote_handler.test(*args) end
octal_mode_str()
click to toggle source
# File lib/capistrano/template/helpers/uploader.rb, line 123 def octal_mode_str format '%.4o' , mode end