specinfra 2.15.2 → 2.16.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/specinfra/backend/docker.rb +9 -3
- data/lib/specinfra/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 99ea82b3a9db40daa6c614e81c6bd12435804308
|
4
|
+
data.tar.gz: 46729b659476d950ce3119f97b1c9b0ad1bafb1a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc6b49468e7cb92a3a24e614a9138cbf6f86ed56112e1c8aed913989463457649af73b9bfa1db57ede536f9631e869e5ed901c87f45091600c70831c58b8b401
|
7
|
+
data.tar.gz: 7c24d74099d82c1bfc350f8fab9cef0e7d4ce54b3855dadcac9cf1f3c22c769702c537b20f75067a9f6500c92bd83424e2ab99d5a5f0b1d37072671dc5ad20bf
|
@@ -12,7 +12,9 @@ module Specinfra::Backend
|
|
12
12
|
if image = Specinfra.configuration.docker_image
|
13
13
|
@images = []
|
14
14
|
@base_image = ::Docker::Image.get(image)
|
15
|
-
|
15
|
+
|
16
|
+
env = Specinfra.configuration.env || {}
|
17
|
+
create_and_start_container(env)
|
16
18
|
ObjectSpace.define_finalizer(self, proc { cleanup_container })
|
17
19
|
elsif container = Specinfra.configuration.docker_container
|
18
20
|
@container = ::Docker::Container.get(container)
|
@@ -47,7 +49,7 @@ module Specinfra::Backend
|
|
47
49
|
|
48
50
|
private
|
49
51
|
|
50
|
-
def create_and_start_container
|
52
|
+
def create_and_start_container(env)
|
51
53
|
opts = { 'Image' => current_image.id }
|
52
54
|
|
53
55
|
if current_image.json["Config"]["Cmd"].nil?
|
@@ -55,7 +57,11 @@ module Specinfra::Backend
|
|
55
57
|
end
|
56
58
|
|
57
59
|
if path = Specinfra.configuration.path
|
58
|
-
(opts['Env'] ||=
|
60
|
+
(opts['Env'] ||= []) << "PATH=#{path}"
|
61
|
+
end
|
62
|
+
|
63
|
+
if env
|
64
|
+
opts['Env'] = (opts['Env'] || []) + env.map { |k,v| [k,v].join('=') }
|
59
65
|
end
|
60
66
|
|
61
67
|
@container = ::Docker::Container.create(opts)
|
data/lib/specinfra/version.rb
CHANGED