mcrain 0.3.2 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/mcrain/boot2docker.rb +30 -1
- data/lib/mcrain/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b5629c435f26df6400e933c493df85b13e5a09bd
|
4
|
+
data.tar.gz: 3d63157ba342d42c2021963af422061e072127b4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 39cfe426a5b1a9b22960e504d1459982c0212d5750250d97d3567ebf11d91785e4ff79b6ab4be37c277ac9150f8670a3fefd73a2d8a632a32c38e37ce483f550
|
7
|
+
data.tar.gz: c6ae5b7cd0e03408ad61f8300a1aafdbd27406e18b00b0e46d5e203b7fdf06411f24d081f5ca81b3312c3f0fce0503c42b5e6835d08281f97d0c1ba092cc7bab
|
data/lib/mcrain/boot2docker.rb
CHANGED
@@ -64,13 +64,17 @@ module Mcrain
|
|
64
64
|
def download_files_from_vm(host, files)
|
65
65
|
return if files.values.all?{|f| File.readable?(f)}
|
66
66
|
files.values.each{|f| FileUtils.mkdir_p(File.dirname(f))}
|
67
|
-
|
67
|
+
scp_connect(host) do |scp|
|
68
68
|
files.each do |src, dest|
|
69
69
|
scp.download(src, dest)
|
70
70
|
end
|
71
71
|
end
|
72
72
|
end
|
73
73
|
|
74
|
+
def scp_connect(host, &block)
|
75
|
+
Net::SCP.start(host, "docker", :password => "tcuser", &block)
|
76
|
+
end
|
77
|
+
|
74
78
|
BOOT2DOCKER_DOCKER_HOME = '/home/docker'.freeze
|
75
79
|
|
76
80
|
# return temporary dire for 2nd argument of Dir.mktmpdir
|
@@ -136,5 +140,30 @@ module Mcrain
|
|
136
140
|
return r
|
137
141
|
end
|
138
142
|
|
143
|
+
def cp_r(src, dest)
|
144
|
+
used? ? cp_r_remote(src, dest) : cp_r_local(src, dest)
|
145
|
+
end
|
146
|
+
|
147
|
+
def cp_r_remote(src, dest)
|
148
|
+
Dir.mktmpdir("for_tarball") do |dir|
|
149
|
+
tarball_name = "#{File.basename(src)}.tar.gz"
|
150
|
+
FileUtils.chdir(dir) do
|
151
|
+
FileUtils.cp_r(src, ".")
|
152
|
+
unless system("tar zcf #{tarball_name} #{File.basename(src)}")
|
153
|
+
raise "failed to create tarball of #{src} to #{dir}"
|
154
|
+
end
|
155
|
+
end
|
156
|
+
host = URI.parse(ENV["DOCKER_HOST"]).host
|
157
|
+
scp_connect(host) do |scp|
|
158
|
+
scp.upload!(File.join(dir, tarball_name), dest)
|
159
|
+
scp.session.exec!("cd #{dest} && tar zxf #{tarball_name}")
|
160
|
+
end
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
def cp_r_local(src, dest)
|
165
|
+
FileUtils.cp_r(src, dest)
|
166
|
+
end
|
167
|
+
|
139
168
|
end
|
140
169
|
end
|
data/lib/mcrain/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mcrain
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- akm
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-08-
|
11
|
+
date: 2015-08-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: logger_pipe
|