Module: Deployment::Methods::Publisher

Defined in:
lib/depengine/dsl/publisher.rb

Instance Method Summary collapse

Instance Method Details

#samba_upload(source, target, options = {}) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/depengine/dsl/publisher.rb', line 4

def samba_upload(source, target, options = {})
  Helper.validates_presence_of source
  Helper.validates_presence_of target

  publisher = ::Publisher::Samba.new
  publisher.samba_share      = options[:samba_share]      || @cdb['samba_share']
  publisher.worker = self
  publisher.samba_mountpoints      = options[:samba_mountpoints]      || @cdb['samba_mountpoints']

  Helper.validates_presence_of publisher.samba_share, 'Sambe share not set'
  Helper.validates_presence_of publisher.samba_mountpoints, 'Sambe mountpoints not set'

  publisher.copy(File.join($recipe_config[:deploy_home], source), \
                 target, options)
end

#sftp_chmod(path, permissions, options = {}) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/depengine/dsl/publisher.rb', line 40

def sftp_chmod(path, permissions, options = {})
  Helper.validates_presence_of @cdb['ssh_key_file'], 'SSH-keyfile not set'
  Helper.validates_presence_of path
  Helper.validates_presence_of permissions

  publisher = ::Publisher::Sftp.new
  publisher.remote_host  = options[:remote_host]  || @cdb['remote_host']
  publisher.remote_user  = options[:remote_user]  || @cdb['remote_user']
  publisher.ssh_key_file = options[:ssh_key_file] || @cdb['ssh_key_file']

  publisher.ssh_key_file = File.join(File.dirname($exec_file_path), \
                                     publisher.ssh_key_file)

  Helper.validates_presence_of publisher.remote_host, 'Remote host not set'
  Helper.validates_presence_of publisher.remote_user, 'Remote user not set'

  publisher.chmod(path, permissions, options)
end

#sftp_upload(source, target, options = {}) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/depengine/dsl/publisher.rb', line 20

def sftp_upload(source, target, options = {})
  Helper.validates_presence_of @cdb['ssh_key_file'], 'SSH-keyfile not set'
  Helper.validates_presence_of source
  Helper.validates_presence_of target

  publisher = ::Publisher::Sftp.new
  publisher.remote_host  = options[:remote_host]  || @cdb['remote_host']
  publisher.remote_user  = options[:remote_user]  || @cdb['remote_user']
  publisher.ssh_key_file = options[:ssh_key_file] || @cdb['ssh_key_file']

  publisher.ssh_key_file = File.join(File.dirname($exec_file_path), \
                                     publisher.ssh_key_file)

  Helper.validates_presence_of publisher.remote_host, 'Remote host not set'
  Helper.validates_presence_of publisher.remote_user, 'Remote user not set'

  publisher.copy(File.join($recipe_config[:deploy_home], source), \
                 target, options)
end