kitchen-salt 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f8bdce74b7821d2d2649710602094447aff55c3c930dae522cd02627d3345328
4
- data.tar.gz: b056a29408144b366d9f048db41134633ee4460963d451a0ed63911b657098e2
3
+ metadata.gz: 93dfdbf5efa3112eddcdab3c98bed75c5b7d1b33d58707a5b78cd61a8a8bef88
4
+ data.tar.gz: 0de670b3a36206819b48a47cca85270a9c9f2a7d072b80477ac05600481ce3a3
5
5
  SHA512:
6
- metadata.gz: 3c6c19e87b2c8f144c92a992cc204163a7f396a3643b07e360ea7be51c7971a5c44ac7937e5d2864f903c7bb809c8f2444092f5d8b7f9a1557d0ba9361ab1623
7
- data.tar.gz: cfacb475cab20ede8926a31977b7a9e5b1f116ef8d95a706d7a2b578896989c3c71c7fa61307935e6ce2aea1f9d69d48704e450bdada54cd88542ce5f5df8f01
6
+ metadata.gz: f79d96e2af32483dcda641a92e3b83ef169ac2669110218afdc4e2411444deb95d5b0f75c5f2988e289dbb174a8909553011e2a8cd3dd070a8cb527ca067e03e
7
+ data.tar.gz: dc89205d27933399395c0ed3e61d02d5966ba689607bedc3b3f55b11217cb40905cbd048732e156da8e33b8c05c1e35b0cbece40fecc576ded8bafbd04ff63c1
@@ -1,5 +1,5 @@
1
1
  module Kitchen
2
2
  module Salt
3
- VERSION = '0.2.0'.freeze
3
+ VERSION = '0.2.1'.freeze
4
4
  end
5
5
  end
@@ -0,0 +1,73 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ require "kitchen/verifier/base"
4
+
5
+ module Kitchen
6
+ module Verifier
7
+ class SaltTox < Kitchen::Verifier::Base
8
+ kitchen_verifier_api_version 1
9
+
10
+ plugin_version Kitchen::VERSION
11
+
12
+ default_config :testingdir, '/testing'
13
+ default_config :verbose, false
14
+ default_config :run_destructive, false
15
+ default_config :xml, false
16
+ default_config :coverage_xml, false
17
+ default_config :types, []
18
+ default_config :tests, []
19
+ default_config :transport, false
20
+ default_config :save, {}
21
+ default_config :windows, false
22
+
23
+ def call(state)
24
+ info("[#{name}] Verify on instance #{instance.name} with state=#{state}")
25
+ root_path = (config[:windows] ? '%TEMP%\\kitchen' : '/tmp/kitchen')
26
+ if ENV['KITCHEN_TESTS']
27
+ ENV['KITCHEN_TESTS'].split(' ').each{|test| config[:tests].push(test)}
28
+ end
29
+ command = [
30
+ 'tox -c',
31
+ File.join(root_path, config[:testingdir], 'tox.ini'),
32
+ "-e #{instance.suite.name}",
33
+ '--',
34
+ '--sysinfo',
35
+ '--output-columns=80',
36
+ (config[:windows] ? "--names-file=#{root_path}\\testing\\tests\\whitelist.txt" : ''),
37
+ (config[:transport] ? "--transport=#{config[:transport]}" : ''),
38
+ (config[:verbose] ? '-v' : ''),
39
+ (config[:run_destructive] ? "--run-destructive" : ''),
40
+ (config[:coverage_xml] ? "--cov-report xml:#{config[:coverage_xml]}" : ''),
41
+ (config[:xml] ? "--junitxml=#{config[:xml]}" : ''),
42
+ config[:types].collect{|type| "--#{type}"}.join(' '),
43
+ config[:tests].join(' '),
44
+ '2>&1',
45
+ ].join(' ')
46
+ if config[:windows]
47
+ command = "cmd.exe /c \"#{command}\" 2>&1"
48
+ end
49
+ info("Running Command: #{command}")
50
+ instance.transport.connection(state) do |conn|
51
+ begin
52
+ if config[:windows]
53
+ conn.execute('$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")')
54
+ conn.execute("$env:PythonPath = [Environment]::ExpandEnvironmentVariables(\"#{root_path}\\testing\")")
55
+ else
56
+ conn.execute(sudo("chown -R $USER #{root_path}"))
57
+ end
58
+ conn.execute(sudo(command))
59
+ ensure
60
+ config[:save].each do |remote, local|
61
+ unless config[:windows]
62
+ conn.execute(sudo("chmod -R +r #{remote}"))
63
+ end
64
+ info("Copying #{remote} to #{local}")
65
+ conn.download(remote, local)
66
+ end
67
+ end
68
+ end
69
+ debug("[#{name}] Verify completed.")
70
+ end
71
+ end
72
+ end
73
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kitchen-salt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - SaltStack Inc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-05-22 00:00:00.000000000 Z
11
+ date: 2018-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hashie
@@ -157,6 +157,7 @@ files:
157
157
  - lib/kitchen/provisioner/salt_solo.rb
158
158
  - lib/kitchen/provisioner/spm.erb
159
159
  - lib/kitchen/verifier/runtests.rb
160
+ - lib/kitchen/verifier/salttox.rb
160
161
  homepage: https://github.com/saltstack/kitchen-salt
161
162
  licenses:
162
163
  - Apache-2.0