kitchen-qemu 0.1.1 → 0.1.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0b384b431d25be6af9629e25257b22aae196b6ee
4
- data.tar.gz: a357e929445b2ed642d3afe3e1c6b2dfa09c65c6
3
+ metadata.gz: 1029f7e678c666e950af682e6efa5ef223f2fc21
4
+ data.tar.gz: 3bb85ec743a685a5a4e9adf9b166b21117a1caf5
5
5
  SHA512:
6
- metadata.gz: c2528d3868e9d8f30466636577dc0c8e4823be92243171ae1e31c6be6db00b298f7629b93361f9a776f265953db9f89d7f8eaa3d5589c2d67109736644901a62
7
- data.tar.gz: 3c6efcde7a3193201f4f2aaafd2cdf063da363ca3b0f80a6c0bdc613b0febe778c72030dd1a11e8f79584f125cc0dfa111cbf85a61d4d77e4255d9097fca0734
6
+ metadata.gz: 28214283a12ec0d94a6b59551a438de3eaa4804dbdd2fe5c53d0be3fa33b70eaf054184e43f44d324e24eeaeef9b80565168a6273d42d652596cb31a0c013797
7
+ data.tar.gz: cee503538175132530f22439bf3259556fbbcbb0af878a0444199b5cbb35e9f400abb8d45bc8e87913e0780d6f0458767f085c5f9345a1fe0502f8ba97c74433
@@ -37,6 +37,7 @@ module Kitchen
37
37
  default_config :username, 'kitchen'
38
38
  default_config :password, 'kitchen'
39
39
  default_config :port, 2222
40
+ default_config :display, 'none'
40
41
  default_config :memory, '512'
41
42
  default_config :nic_model, 'virtio'
42
43
 
@@ -59,9 +60,7 @@ module Kitchen
59
60
  config[:binary] = @@archbinary[config[:arch]] or
60
61
  raise UserError, "Unknown architecture '#{config[:arch]}'"
61
62
  end
62
- if not config[:vnc] and not config[:spice]
63
- config[:spice] = "addr=#{spice_path},unix"
64
- end
63
+ config[:vga] = 'qxl' if config[:spice] && !config[:vga]
65
64
  self
66
65
  end
67
66
 
@@ -75,6 +74,7 @@ module Kitchen
75
74
  begin
76
75
  mon = UNIXSocket.new(monitor)
77
76
  rescue Errno::ECONNREFUSED
77
+ info 'Stale monitor socket detected. Assuming old QEMU already quit.'
78
78
  cleanup!
79
79
  else
80
80
  mon.close
@@ -94,9 +94,10 @@ module Kitchen
94
94
 
95
95
  cmd = [
96
96
  config[:binary], '-daemonize',
97
+ '-display', config[:display].to_s,
97
98
  '-chardev', "socket,id=monitor,path=#{monitor},server,nowait",
98
99
  '-mon', 'chardev=monitor,mode=control,default',
99
- '-m', config[:memory],
100
+ '-m', config[:memory].to_s,
100
101
  '-net', "nic,model=#{config[:nic_model]}",
101
102
  '-net', "user,net=192.168.1.0/24,hostname=#{hostname},hostfwd=tcp::#{state[:port]}-:22",
102
103
  '-device', 'virtio-scsi-pci,id=scsi',
@@ -124,15 +125,13 @@ module Kitchen
124
125
  info 'KVM disabled'
125
126
  end
126
127
 
127
- if config[:spice]
128
- cmd.push('-vga', 'qxl', '-spice', config[:spice])
129
- elsif config[:vnc]
130
- cmd.push('-vnc', config[:vnc])
131
- end
128
+ cmd.push('-vga', config[:vga].to_s) if config[:vga]
129
+ cmd.push('-spice', config[:spice].to_s) if config[:spice]
130
+ cmd.push('-vnc', config[:vnc].to_s) if config[:vnc]
132
131
 
133
132
  info 'Spawning QEMU..'
134
133
  error = nil
135
- Open3.popen3({ 'QEMU_AUDIO_DRV' => 'none' }, *cmd, :unsetenv_others=>true ) do |_, _, err, thr|
134
+ Open3.popen3({ 'QEMU_AUDIO_DRV' => 'none' }, *cmd) do |_, _, err, thr|
136
135
  if not thr.value.success?
137
136
  error = err.read.strip
138
137
  end
@@ -213,9 +212,9 @@ jxl4Yo9wNmkVrWMkOUn1BRWTEVLnx88EaIOu3CJyJDsaSufbyENCtCXhjVEV4Eqp
213
212
  kc9GOsm4n+EVnWyhUVjwxEExaCRuFa4aJ/ekLZYtepNnd9Nsoknqd1SVW163QjrY
214
213
  tY4IM9IaSC2LuPFVc0Kx6TwObdeQScOokIxL3HfayfLKieTLC+w2
215
214
  -----END RSA PRIVATE KEY-----
216
- }
215
+ }.freeze
217
216
 
218
- @@pubkey = 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDIboBIvdtZLruuwDksO8qd90IFqArrUHksiv4292MrehEqEKqpGzto1I86oy7Y1sqi3j8G0PSFaKkXsICwyor7bjVygxTDFFOWq+h78vvFnbgq1qOubWST/E1QY/m9bIryxh9icNS4tLKlFpn9l9a4pmBAsN07DYVaocVUugkOxeCxr/KLUXdvmXj4Xfq837ultL1ggyaN2YqeDwn+GxM8RNm51rIRa4DL6Y1rPgztm3FL+A9MglzEjELbs8s6EDVewAG6do1HwS3LqCGxlfZgRieelzIHkyaqLRU4mzqbkhmfaR/U/fHQppRDYWb3CoCSBilJxxYfjLK1VDyXOWkH kitchen-qemu'
217
+ @@pubkey = 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDIboBIvdtZLruuwDksO8qd90IFqArrUHksiv4292MrehEqEKqpGzto1I86oy7Y1sqi3j8G0PSFaKkXsICwyor7bjVygxTDFFOWq+h78vvFnbgq1qOubWST/E1QY/m9bIryxh9icNS4tLKlFpn9l9a4pmBAsN07DYVaocVUugkOxeCxr/KLUXdvmXj4Xfq837ultL1ggyaN2YqeDwn+GxM8RNm51rIRa4DL6Y1rPgztm3FL+A9MglzEjELbs8s6EDVewAG6do1HwS3LqCGxlfZgRieelzIHkyaqLRU4mzqbkhmfaR/U/fHQppRDYWb3CoCSBilJxxYfjLK1VDyXOWkH kitchen-qemu'.freeze
219
218
 
220
219
  @@archbinary = {
221
220
  'i386' => 'qemu-system-i386',
@@ -224,7 +223,7 @@ tY4IM9IaSC2LuPFVc0Kx6TwObdeQScOokIxL3HfayfLKieTLC+w2
224
223
  'x86_64' => 'qemu-system-x86_64',
225
224
  '32bit' => 'qemu-system-i386',
226
225
  '64bit' => 'qemu-system-x86_64',
227
- }
226
+ }.freeze
228
227
 
229
228
  def privkey_path
230
229
  File.join(config[:kitchen_root], '.kitchen', 'kitchen-qemu.key')
@@ -234,10 +233,6 @@ tY4IM9IaSC2LuPFVc0Kx6TwObdeQScOokIxL3HfayfLKieTLC+w2
234
233
  File.join(config[:kitchen_root], '.kitchen', "#{instance.name}.mon")
235
234
  end
236
235
 
237
- def spice_path
238
- File.join(config[:kitchen_root], '.kitchen', "#{instance.name}.spice")
239
- end
240
-
241
236
  def create_privkey
242
237
  path = privkey_path
243
238
  return true if File.file?(path)
@@ -245,12 +240,10 @@ tY4IM9IaSC2LuPFVc0Kx6TwObdeQScOokIxL3HfayfLKieTLC+w2
245
240
  end
246
241
 
247
242
  def cleanup!
248
- [ spice_path, monitor_path ].each do |path|
249
- begin
250
- File.delete(path)
251
- rescue Errno::ENOENT
252
- # do nothing
253
- end
243
+ begin
244
+ File.delete(monitor_path)
245
+ rescue Errno::ENOENT
246
+ # do nothing
254
247
  end
255
248
  end
256
249
 
@@ -17,6 +17,6 @@
17
17
  module Kitchen
18
18
  module Driver
19
19
  # Version string for the QEMU Kitchen driver
20
- QEMU_VERSION = '0.1.1'
20
+ QEMU_VERSION = '0.1.2'
21
21
  end
22
22
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kitchen-qemu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Emil Renner Berthing