Class: Rake::SshDirPublisher

Inherits:
Object
  • Object
show all
Includes:
DSL
Defined in:
lib/rake/contrib/sshpublisher.rb

Overview

Publish an entire directory to an existing remote directory using SSH.

Direct Known Subclasses

RubyForgePublisher, SshFreshDirPublisher

Constant Summary

Constants included from FileUtilsExt

FileUtilsExt::DEFAULT

Constants included from FileUtils

FileUtils::LN_SUPPORTED, FileUtils::RUBY

Instance Method Summary collapse

Methods included from FileUtilsExt

#nowrite, #rake_check_options, #rake_merge_option, #rake_output_message, #verbose, #when_writing

Methods included from FileUtils

#ruby, #safe_ln, #sh, #split_all

Constructor Details

#initialize(host, remote_dir, local_dir) ⇒ SshDirPublisher

Creates an SSH publisher which will scp all files in local_dir to remote_dir on host



14
15
16
17
18
# File 'lib/rake/contrib/sshpublisher.rb', line 14

def initialize(host, remote_dir, local_dir)
  @host = host
  @remote_dir = remote_dir
  @local_dir = local_dir
end

Instance Method Details

#uploadObject

Uploads the files



22
23
24
# File 'lib/rake/contrib/sshpublisher.rb', line 22

def upload
  sh "scp", "-rq", "#{@local_dir}/*", "#{@host}:#{@remote_dir}"
end