kitchen-lxd_cli 2.0.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/kitchen/driver/lxd_cli.rb +13 -8
- data/lib/kitchen/driver/lxd_cli_version.rb +1 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3aba5aaed0f962cf7e3f0d09e27bd1260204e6e6
|
4
|
+
data.tar.gz: 7e31964bf92ed3b05c05262c4fa5588df05ebe63
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 88dad7ad58fb0e1acba6b90c4848b042bb32fbef856876c2bead66b0d2c749f932a14a75debb37c34b7e5f4c8e40524381934d59dfb7276d524d58343cb1897a
|
7
|
+
data.tar.gz: 182c4bfdf26a9c7411cb8d2dd534efb39917f066f93f91e998245dff213a7d0e62a45e663d909df133017e8765de38c30fd514dc71b49ad2dbb7893551003791
|
@@ -37,7 +37,7 @@ module Kitchen
|
|
37
37
|
File.expand_path('~/.ssh/identity.pub'),
|
38
38
|
File.expand_path('~/.ssh/id_ecdsa.pub')
|
39
39
|
].find { |path| File.exist?(path) }
|
40
|
-
|
40
|
+
|
41
41
|
raise 'Public key could not be found in the public_key_path provided. Please update the kitchen-lxd_cli config public_key_path in kitchen yaml or create a ssh key pair (e.g. `ssh-keygen -t rsa`)' unless pub_key
|
42
42
|
|
43
43
|
pub_key
|
@@ -70,7 +70,7 @@ module Kitchen
|
|
70
70
|
setup_ssh_access
|
71
71
|
wait_for_ssh_login(lxc_ip) if config[:enable_wait_for_ssh_login] == "true"
|
72
72
|
IO.popen("lxc exec #{@@instance_name} bash", "r+") do |p|
|
73
|
-
p.puts("if [ ! -d '#{config[:verifier_path]}' ]; then mkdir -p #{config[:verifier_path]}; fi")
|
73
|
+
p.puts("if [ ! -d '#{config[:verifier_path]}' ]; then mkdir -p #{config[:verifier_path]}; fi")
|
74
74
|
p.puts("if [ ! -L '/tmp/verifier' ]; then ln -s #{config[:verifier_path]} /tmp/verifier; fi")
|
75
75
|
end if config[:verifier_path] && config[:verifier_path].length > 0
|
76
76
|
end
|
@@ -134,9 +134,9 @@ module Kitchen
|
|
134
134
|
unless image_exists?(image_name)
|
135
135
|
info("Creating image #{image_name} now.")
|
136
136
|
image = get_image_info
|
137
|
-
image_os = config[:image_os]
|
137
|
+
image_os = config[:image_os]
|
138
138
|
image_os ||= image[:os]
|
139
|
-
image_release = config[:image_release]
|
139
|
+
image_release = config[:image_release]
|
140
140
|
image_release ||= image[:release_num]
|
141
141
|
debug("Ran command: lxc image copy #{image_os}:#{image_release} local: --alias #{image_name}")
|
142
142
|
IO.popen("lxc image copy #{image_os}:#{image_release} local: --alias #{image_name}", "w") { |pipe| puts pipe.gets rescue nil }
|
@@ -185,7 +185,7 @@ module Kitchen
|
|
185
185
|
def get_image_name
|
186
186
|
image_name = get_publish_image_name
|
187
187
|
unless config[:use_publish_image] == true && image_exists?(image_name)
|
188
|
-
image_name = config[:image_name]
|
188
|
+
image_name = config[:image_name]
|
189
189
|
image_name ||= instance.platform.name
|
190
190
|
end
|
191
191
|
|
@@ -211,8 +211,9 @@ module Kitchen
|
|
211
211
|
return false
|
212
212
|
end
|
213
213
|
end
|
214
|
-
|
214
|
+
0
|
215
215
|
def config_and_start_container
|
216
|
+
platform, release = instance.platform.name.split('-')
|
216
217
|
config[:ip_gateway] ||= "auto"
|
217
218
|
arg_disable_dhcp = ""
|
218
219
|
|
@@ -221,7 +222,11 @@ module Kitchen
|
|
221
222
|
p.puts("echo -e \"lxc.network.0.ipv4 = #{config[:ipv4]}\nlxc.network.0.ipv4.gateway = #{config[:ip_gateway]}\n\" | lxc config set #{@@instance_name} raw.lxc -")
|
222
223
|
p.puts("exit")
|
223
224
|
end
|
224
|
-
|
225
|
+
if platform.downcase == "ubuntu"
|
226
|
+
arg_disable_dhcp = "&& lxc exec #{@@instance_name} -- sed -i 's/dhcp/manual/g' /etc/network/interfaces.d/eth0.cfg"
|
227
|
+
elsif platform.downcase == "centos"
|
228
|
+
arg_disable_dhcp = "&& lxc exec #{@@instance_name} -- sed -i 's/dhcp/none/g' /etc/sysconfig/network-scripts/ifcfg-eth0"
|
229
|
+
end
|
225
230
|
end
|
226
231
|
|
227
232
|
info("Starting container #{@@instance_name}")
|
@@ -443,7 +448,7 @@ module Kitchen
|
|
443
448
|
debug("NOTE: Restarting seemed to be the only way I could get things to work. Tried lxc profiles, config options. Tried restart networking service but it didn't work, also tried passing command like ifconfig 10.0.3.x/24 eth0 up. Which set the ip but after container ran for a while, it would reset to dhcp address that had been assigned. Restarting container seems to be working, and is really fast. Open to better alternatives.")
|
444
449
|
end
|
445
450
|
|
446
|
-
|
451
|
+
|
447
452
|
=begin
|
448
453
|
def configure_ip_via_lxc_restart
|
449
454
|
debug("Configuring new ip address on eth0")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-lxd_cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Braden Wright
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: test-kitchen
|
@@ -133,9 +133,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
133
133
|
version: '0'
|
134
134
|
requirements: []
|
135
135
|
rubyforge_project:
|
136
|
-
rubygems_version: 2.6.
|
136
|
+
rubygems_version: 2.6.6
|
137
137
|
signing_key:
|
138
138
|
specification_version: 4
|
139
139
|
summary: A Test Kitchen Driver for LXD
|
140
140
|
test_files: []
|
141
|
-
has_rdoc:
|