174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
|
# File 'lib/mcrain/docker_machine.rb', line 174
def cp_r_remote(src, dest)
Dir.mktmpdir("for_tarball") do |dir|
tarball_name = "#{File.basename(src)}.tar.gz"
FileUtils.chdir(dir) do
FileUtils.cp_r(src, ".")
unless system("tar zcf #{tarball_name} #{File.basename(src)}")
raise "failed to create tarball of #{src} to #{dir}"
end
end
host = URI.parse(ENV["DOCKER_HOST"]).host
scp_connect(host) do |scp|
scp.upload!(File.join(dir, tarball_name), dest)
scp.session.exec!("cd #{dest} && tar zxf #{tarball_name}")
end
end
end
|