chef-zero-scheduled-task 0.0.6 → 0.0.7.dev

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: e8bc9c44150d77a20775554ae7f7f954e60c1ff7
4
- data.tar.gz: 0cab201f160c118a48b4329fdce04e7b41f581af
3
+ metadata.gz: 8117747c819d4f31c7f77aae4963ce74c8725f8f
4
+ data.tar.gz: f5720d725bf9275e5c15d1e7b788f278b7d60c57
5
5
  SHA512:
6
- metadata.gz: 3c8b872af54cf9df36ad9329bccd32546c8d085bb7b5aea3cc8b6bb45093555965d8460b108c8ee72eba354e859fe93b346d281fb39dcf76c3ee8e48b42da81a
7
- data.tar.gz: 7a47a88030ebe4f96b0eadea92b4c4008f57ff675aaa8cdffdd52eebd5e75088576366adf035252c16cfde71e73da4eed0b6b0b3350fa89288d0c7201d8979b8
6
+ metadata.gz: 206da575b7737e8cb185748a06b19f87fcdc909ce9f41b5d5bf066058792af20788f863c0c62182b2372b0fcab78b8d353fb0d3c6f214539005b4dd8f6e97210
7
+ data.tar.gz: c1b6fff9b97504421e484cffc1e92995f66aab0e5f0846f299fdd24ed6e8e0170399e0d4ed25b1508a7241ab57f6a0ddae868bfe9fc94b9e137a21160439a7ae
data/.cane ADDED
@@ -0,0 +1,7 @@
1
+ --abc-max 20
2
+ --style-measure 100
3
+ --abc-exclude Kitchen::ThorTasks#define
4
+ --abc-exclude Kitchen::Driver::SSHBase#converge
5
+ --abc-exclude Kitchen::Driver::SSHBase#verify
6
+ --style-exclude lib/vendor/**/*.rb
7
+ --doc-exclude lib/vendor/**/.rb
data/.rubocop.yml ADDED
@@ -0,0 +1,3 @@
1
+ Style/FileName:
2
+ Exclude:
3
+ - 'support/**/*'
data/.yardopts ADDED
@@ -0,0 +1,3 @@
1
+ --readme README.md
2
+ --markup markdown
3
+ --markup-provider maruku
data/Gemfile CHANGED
@@ -1,4 +1,15 @@
1
- source 'https://rubygems.org'
1
+ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in chef-zero-scheduled-task.gemspec
4
4
  gemspec
5
+
6
+ group :guard do
7
+ gem "guard-minitest"
8
+ gem "guard-cucumber", "~> 1.4"
9
+ gem "guard-rubocop"
10
+ gem "guard-yard"
11
+ end
12
+
13
+ group :test do
14
+ gem "codeclimate-test-reporter", :require => nil
15
+ end
data/Rakefile CHANGED
@@ -9,44 +9,59 @@ Rake::TestTask.new(:unit) do |t|
9
9
  t.verbose = true
10
10
  end
11
11
 
12
+ require "cucumber"
13
+ require "cucumber/rake/task"
14
+ Cucumber::Rake::Task.new(:features) do |t|
15
+ t.cucumber_opts = ["features", "-x", "--format progress", "--no-color"]
16
+ end
17
+
12
18
  desc "Run all test suites"
13
- task :test => [:unit]
19
+ task :test => [:unit] #[:unit, :features]
14
20
 
15
21
  desc "Display LOC stats"
16
22
  task :stats do
17
23
  puts "\n## Production Code Stats"
18
- sh "countloc -r lib"
24
+ sh "countloc -r lib/kitchen lib/kitchen.rb"
19
25
  puts "\n## Test Code Stats"
20
- sh "countloc -r spec"
26
+ sh "countloc -r spec features"
21
27
  end
22
28
 
23
29
  require "finstyle"
24
30
  require "rubocop/rake_task"
25
31
  RuboCop::RakeTask.new(:style) do |task|
26
- task.options << "--display-cop-names"
27
- task.options << "--lint"
28
- task.options << '--config' << '.rubocop.yml'
29
- task.patterns = ['lib/**/*.rb']
32
+ task.options += ["--display-cop-names", "--no-color"]
30
33
  end
31
34
 
32
- require "cane/rake_task"
33
- desc "Run cane to check quality metrics"
34
- Cane::RakeTask.new do |cane|
35
- cane.canefile = "./.cane"
36
- end
35
+ if RUBY_ENGINE != "jruby"
36
+ require "cane/rake_task"
37
+ desc "Run cane to check quality metrics"
38
+ Cane::RakeTask.new do |cane|
39
+ cane.canefile = "./.cane"
40
+ end
37
41
 
38
- desc "Run all quality tasks"
39
- task :quality => [:cane, :style, :stats]
42
+ desc "Run all quality tasks"
43
+ task :quality => [:cane, :style, :stats]
44
+ else
45
+ desc "Run all quality tasks"
46
+ task :quality => [:style, :stats]
47
+ end
40
48
 
41
49
  require "yard"
42
50
  YARD::Rake::YardocTask.new
43
51
 
44
- desc "Generate gem dependency graph"
45
- task :viz do
46
- Bundler.with_clean_env do
47
- sh "bundle viz --without test development guard " \
48
- "--requirements --version"
52
+ task :default => [:test, :quality]
53
+
54
+ task :deploy_over_dk do
55
+ if RUBY_PLATFORM =~ /mswin|mingw|windows/
56
+ dk_path = File.join(ENV["SYSTEMDRIVE"], "opscode", "chefdk")
57
+ else
58
+ dk_path = "/opt/chefdk"
49
59
  end
60
+
61
+ dk_app_path = File.join(dk_path, %w[embedded apps test-kitchen])
62
+ FileUtils.copy_entry(File.dirname(__FILE__), dk_app_path)
63
+ git_dir = File.join(dk_app_path, ".git")
64
+ FileUtils.rm_rf(git_dir) if Dir.exist?(git_dir)
50
65
  end
51
66
 
52
- task :default => [:test, :quality]
67
+ task :dk_install => [:deploy_over_dk, :install]
@@ -1,7 +1,7 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+ lib = File.expand_path("../lib", __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'chef/zero/scheduled/task/version'
4
+ require "chef/zero/scheduled/task/version"
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "chef-zero-scheduled-task"
@@ -18,9 +18,28 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.7"
22
- spec.add_development_dependency "rake", "~> 10.0"
23
- spec.add_development_dependency "pry", "~> 0.10"
24
-
25
21
  spec.add_dependency "test-kitchen", "~> 1.4"
22
+
23
+ spec.add_development_dependency "pry"
24
+ spec.add_development_dependency "winrm-transport", "~> 1.0"
25
+
26
+ spec.add_development_dependency "bundler", "~> 1.3"
27
+ spec.add_development_dependency "rake"
28
+
29
+ spec.add_development_dependency "aruba", "~> 0.7.0"
30
+ spec.add_development_dependency "fakefs", "~> 0.4"
31
+ spec.add_development_dependency "minitest", "~> 5.3"
32
+ spec.add_development_dependency "mocha", "~> 1.1"
33
+
34
+ spec.add_development_dependency "countloc", "~> 0.4"
35
+ spec.add_development_dependency "maruku", "~> 0.6"
36
+ spec.add_development_dependency "simplecov", "~> 0.7"
37
+ spec.add_development_dependency "yard", "~> 0.8"
38
+
39
+ # style and complexity libraries are tightly version pinned as newer releases
40
+ # may introduce new and undesireable style choices which would be immediately
41
+ # enforced in CI
42
+ spec.add_development_dependency "finstyle", "1.5.0"
43
+ spec.add_development_dependency "cane", "2.6.2"
44
+
26
45
  end
@@ -2,7 +2,7 @@ module Chef
2
2
  module Zero
3
3
  module Scheduled
4
4
  module Task
5
- VERSION = "0.0.6"
5
+ VERSION = "0.0.7.dev"
6
6
  end
7
7
  end
8
8
  end
@@ -16,7 +16,7 @@
16
16
  # See the License for the specific language governing permissions and
17
17
  # limitations under the License.
18
18
 
19
- require 'kitchen/provisioner/chef_zero'
19
+ require "kitchen/provisioner/chef_zero"
20
20
 
21
21
  module Kitchen
22
22
  module Provisioner
@@ -44,7 +44,7 @@ module Kitchen
44
44
  # assuming a version of Chef with local mode.
45
45
  def prepare_command
46
46
  return unless windows_os?
47
- info('Creating a script to run chef client.')
47
+ info("Creating a script to run chef client.")
48
48
  wrap_shell_code(scheduled_task_command)
49
49
  end
50
50
 
@@ -52,39 +52,53 @@ module Kitchen
52
52
  wrap_shell_code(run_scheduled_task_command)
53
53
  end
54
54
 
55
- private
55
+ #private
56
56
 
57
- def resolve_username_and_password
58
- unless config[:task_username] && config[:task_password]
59
- local_state_file = @instance.diagnose[:state_file]
57
+ def local_state_file
58
+ @local_state_file ||= @instance.diagnose[:state_file]
59
+ end
60
+ def resolve_username
61
+ if config[:task_username]
62
+ config[:task_username]
63
+ else
64
+ if local_state_file.key?(:username)
65
+ local_state_file[:username]
66
+ else
67
+ @instance.transport[:username]
68
+ end
69
+ end
70
+ end
71
+
72
+ def resolve_password
73
+ unless config[:task_password]
60
74
  if local_state_file.key?(:password)
61
- config[:task_username] = local_state_file[:username]
62
- config[:task_password] = local_state_file[:password]
75
+ local_state_file[:password]
63
76
  else
64
- config[:task_username] = @instance.transport[:username]
65
- config[:task_password] = @instance.transport[:password]
77
+ @instance.transport[:password]
66
78
  end
67
79
  end
68
80
  end
69
81
 
82
+ def resolve_username_and_password
83
+ @task_username = resolve_username
84
+ @task_password = resolve_password
85
+ end
86
+
70
87
  def run_scheduled_task_command
71
88
  <<-EOH
72
89
  try {
73
- $npipeServer = new-object System.IO.Pipes.NamedPipeServerStream( 'task', [System.IO.Pipes.PipeDirection]::In)
90
+ $npipeServer = new-object System.IO.Pipes.NamedPipeServerStream(
91
+ 'task', [System.IO.Pipes.PipeDirection]::In)
74
92
  $pipeReader = new-object System.IO.StreamReader($npipeServer)
75
93
  schtasks /run /tn "chef-tk"
76
94
  $npipeserver.waitforconnection()
77
95
  $host.ui.writeline('Connected to the scheduled task.')
78
- while ($npipeserver.IsConnected) {
96
+ while ($npipeserver.IsConnected) {
79
97
  $output = $pipereader.ReadLine()
80
98
  if ($output -like 'SCHEDULED_TASK_DONE:*') {
81
99
  $exit_code = ($output -replace 'SCHEDULED_TASK_DONE:').trim()
82
100
  }
83
- else {
84
- $host.ui.WriteLine($output)
85
- }
86
- }
87
- }
101
+ else { $host.ui.WriteLine($output) } } }
88
102
  finally {
89
103
  $pipereader.dispose()
90
104
  $npipeserver.dispose()
@@ -94,10 +108,15 @@ module Kitchen
94
108
  end
95
109
 
96
110
  def setup_scheduled_task_command
111
+ schtasks_cmd = 'schtasks /create /tn "chef-tk"'
112
+ schtasks_user = "/ru '#{@task_username}'" /
113
+ " /rp '#{@task_password}'"
114
+ schtasks_timing = "/sc daily /st 00:00 /f"
97
115
  <<-EOH
98
- $cmd_path = "#{remote_path_join(config[:root_path], 'chef-client-script.ps1')}"
99
- $cmd_line = $executioncontext.invokecommand.expandstring("powershell -executionpolicy unrestricted -File $cmd_path")
100
- schtasks /create /tn "chef-tk" /ru '#{config[:task_username]}' /rp '#{config[:task_password]}' /sc daily /st 00:00 /f /tr "$cmd_line"
116
+ $cmd_path = "#{remote_path_join(config[:root_path], "chef-client-script.ps1")}"
117
+ $cmd_line = $executioncontext.invokecommand.expandstring(
118
+ "powershell -executionpolicy unrestricted -File $cmd_path")
119
+ #{schtasks_cmd} #{schtasks_user} #{schtasks_timing} /tr "$cmd_line"
101
120
  EOH
102
121
  end
103
122
 
@@ -105,21 +124,24 @@ module Kitchen
105
124
  <<-EOH
106
125
  $pre_cmd = '$env:temp = "' + $env:temp + '"' + ";"
107
126
  $pre_cmd += 'start-sleep -seconds 5;'
108
- $pre_cmd += '$npipeClient = new-object System.IO.Pipes.NamedPipeClientStream( $env:ComputerName,'
109
- $pre_cmd += '"task", [System.IO.Pipes.PipeDirection]::Out); $npipeclient.connect();'
127
+ $pre_cmd += '$npipeClient = new-object System.IO.Pipes.NamedPipeClientStream('
128
+ $pre_cmd += '$env:ComputerName,"task", [System.IO.Pipes.PipeDirection]::Out);'
129
+ $pre_cmd += '$npipeclient.connect();'
110
130
  $pre_cmd += '$pipeWriter = new-object System.IO.StreamWriter($npipeClient);'
111
131
  $pre_cmd += '$pipeWriter.AutoFlush = $true'
112
- $cmd_path = "#{remote_path_join(config[:root_path], 'chef-client-script.ps1')}"
132
+ $cmd_path = "#{remote_path_join(config[:root_path], "chef-client-script.ps1")}"
113
133
  $cmd_to_eval = gc $cmd_path -readcount 0 | out-string
114
134
  $cmd = $executioncontext.invokecommand.expandstring($cmd_to_eval) -replace '\r\n'
115
- $cmd = "$cmd | " + '% {} {$pipewriter.writeline($_)} {$pipewriter.writeline("SCHEDULED_TASK_DONE: $LastExitCode");$pipewriter.dispose();$npipeclient.dispose()}'
135
+ $cmd = "$cmd | " +
136
+ '% {} {$pipewriter.writeline($_)} {$pipewriter.writeline("SCHEDULED_TASK_DONE:' +
137
+ '$LastExitCode");$pipewriter.dispose();$npipeclient.dispose()}'
116
138
  $pre_cmd, $cmd | out-file $cmd_path
117
139
  EOH
118
140
  end
119
141
 
120
142
  def prepare_client_zero_script
121
- cmd = [local_mode_command, *chef_client_args].join(' ')
122
- File.open(File.join(sandbox_path, 'chef-client-script.ps1'), 'w') do |file|
143
+ cmd = [local_mode_command, *chef_client_args].join(" ")
144
+ File.open(File.join(sandbox_path, "chef-client-script.ps1"), "w") do |file|
123
145
  file.write(cmd)
124
146
  end
125
147
  end
@@ -127,10 +149,10 @@ module Kitchen
127
149
  def chef_client_args
128
150
  level = config[:log_level] == :info ? :info : config[:log_level]
129
151
  args = [
130
- "--config #{remote_path_join(config[:root_path], 'client.rb')}",
152
+ "--config #{remote_path_join(config[:root_path], "client.rb")}",
131
153
  "--log_level #{level}",
132
- '--force-formatter',
133
- '--no-color'
154
+ "--force-formatter",
155
+ "--no-color"
134
156
  ]
135
157
  add_optional_chef_client_args!(args)
136
158
 
@@ -0,0 +1,58 @@
1
+ require_relative "../../spec_helper"
2
+
3
+ require 'pry'
4
+ require "kitchen"
5
+ require "kitchen/provisioner/chef_zero_scheduled_task"
6
+
7
+ describe Kitchen::Provisioner::ChefZeroScheduledTask do
8
+
9
+ let(:logged_output) { StringIO.new }
10
+ let(:logger) { Logger.new(logged_output) }
11
+ let(:platform) { stub(:os_type => "windows",
12
+ :shell_type => "powershell") }
13
+ let(:suite) { stub(:name => "fries") }
14
+ let(:transport) { { :username => "Administrator",
15
+ :password => "P@ssw0rd" } }
16
+
17
+ let(:config) do
18
+ { :test_base_path => "/b", :kitchen_root => "/r", :log_level => :info }
19
+ end
20
+
21
+ let(:instance) do
22
+ stub(
23
+ :name => "coolbeans",
24
+ :logger => logger,
25
+ :suite => suite,
26
+ :platform => platform,
27
+ :transport => transport,
28
+ :diagnose => { :state_file => {:hostname => "Blah"} }
29
+ )
30
+ end
31
+
32
+
33
+ let(:provisioner) do
34
+ Kitchen::Provisioner::ChefZeroScheduledTask.new(config).finalize_config!(instance)
35
+ end
36
+
37
+ it "provisioner api_version is 2" do
38
+ provisioner.diagnose_plugin[:api_version].must_equal 2
39
+ end
40
+
41
+ it "plugin_version is set to Kitchen::VERSION" do
42
+ provisioner.diagnose_plugin[:version].must_equal Kitchen::VERSION
43
+ end
44
+
45
+ describe 'when username is not provided by the driver or task_username' do
46
+
47
+ it 'is resolved from the transport' do
48
+ provisioner.resolve_username.must_match "Administrator"
49
+ end
50
+
51
+ end
52
+ describe 'when password is not provided by the driver or task_password' do
53
+ # before { transport
54
+ it 'is resolved from the transport' do
55
+ provisioner.resolve_password.must_match "P@ssw0rd"
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,85 @@
1
+ # -*- encoding: utf-8 -*-
2
+ #
3
+ # Author:: Fletcher Nichol (<fnichol@nichol.ca>)
4
+ #
5
+ # Copyright (C) 2012, Fletcher Nichol
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ # See the License for the specific language governing permissions and
17
+ # limitations under the License.
18
+
19
+ gem "minitest"
20
+
21
+ if ENV["CODECLIMATE_REPO_TOKEN"]
22
+ require "codeclimate-test-reporter"
23
+ CodeClimate::TestReporter.start
24
+ elsif ENV["COVERAGE"]
25
+ require "simplecov"
26
+ SimpleCov.profiles.define "gem" do
27
+ command_name "Specs"
28
+
29
+ add_filter ".gem/"
30
+ add_filter "/spec/"
31
+ add_filter "/lib/vendor/"
32
+
33
+ add_group "Libraries", "/lib/"
34
+ end
35
+ SimpleCov.start "gem"
36
+ end
37
+
38
+ require "fakefs/safe"
39
+ require "minitest/autorun"
40
+ require "mocha/setup"
41
+ require "tempfile"
42
+
43
+ # Nasty hack to redefine IO.read in terms of File#read for fakefs
44
+ class IO
45
+ def self.read(*args)
46
+ length = args[1]
47
+ offset = args[2]
48
+ opt = args[3]
49
+ if length.is_a? Hash
50
+ opt = length
51
+ length = nil
52
+ elsif offset.is_a? Hash
53
+ opt = offset
54
+ end
55
+ if opt && opt.key?(:mode)
56
+ File.open(args[0], opt) { |f| f.read(length) }
57
+ else
58
+ File.open(args[0], "rb", opt) { |f| f.read(length) }
59
+ end
60
+ end
61
+ end
62
+
63
+ def with_fake_fs
64
+ FakeFS.activate!
65
+ FileUtils.mkdir_p("/tmp")
66
+ yield
67
+ FakeFS.deactivate!
68
+ FakeFS::FileSystem.clear
69
+ end
70
+
71
+ def running_tests_on_windows?
72
+ ENV["OS"] == "Windows_NT"
73
+ end
74
+
75
+ def os_safe_root_path(root_path)
76
+ if running_tests_on_windows?
77
+ "#{File.join(ENV["SystemDrive"], root_path)}"
78
+ else
79
+ root_path
80
+ end
81
+ end
82
+
83
+ def padded_octal_string(integer)
84
+ integer.to_s(8).rjust(4, "0")
85
+ end
metadata CHANGED
@@ -1,71 +1,225 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-zero-scheduled-task
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7.dev
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Murawski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-31 00:00:00.000000000 Z
11
+ date: 2015-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: test-kitchen
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: pry
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: winrm-transport
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.0'
13
55
  - !ruby/object:Gem::Dependency
14
56
  name: bundler
15
57
  requirement: !ruby/object:Gem::Requirement
16
58
  requirements:
17
59
  - - "~>"
18
60
  - !ruby/object:Gem::Version
19
- version: '1.7'
61
+ version: '1.3'
20
62
  type: :development
21
63
  prerelease: false
22
64
  version_requirements: !ruby/object:Gem::Requirement
23
65
  requirements:
24
66
  - - "~>"
25
67
  - !ruby/object:Gem::Version
26
- version: '1.7'
68
+ version: '1.3'
27
69
  - !ruby/object:Gem::Dependency
28
70
  name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: aruba
29
85
  requirement: !ruby/object:Gem::Requirement
30
86
  requirements:
31
87
  - - "~>"
32
88
  - !ruby/object:Gem::Version
33
- version: '10.0'
89
+ version: 0.7.0
34
90
  type: :development
35
91
  prerelease: false
36
92
  version_requirements: !ruby/object:Gem::Requirement
37
93
  requirements:
38
94
  - - "~>"
39
95
  - !ruby/object:Gem::Version
40
- version: '10.0'
96
+ version: 0.7.0
41
97
  - !ruby/object:Gem::Dependency
42
- name: pry
98
+ name: fakefs
43
99
  requirement: !ruby/object:Gem::Requirement
44
100
  requirements:
45
101
  - - "~>"
46
102
  - !ruby/object:Gem::Version
47
- version: '0.10'
103
+ version: '0.4'
48
104
  type: :development
49
105
  prerelease: false
50
106
  version_requirements: !ruby/object:Gem::Requirement
51
107
  requirements:
52
108
  - - "~>"
53
109
  - !ruby/object:Gem::Version
54
- version: '0.10'
110
+ version: '0.4'
55
111
  - !ruby/object:Gem::Dependency
56
- name: test-kitchen
112
+ name: minitest
57
113
  requirement: !ruby/object:Gem::Requirement
58
114
  requirements:
59
115
  - - "~>"
60
116
  - !ruby/object:Gem::Version
61
- version: '1.4'
62
- type: :runtime
117
+ version: '5.3'
118
+ type: :development
63
119
  prerelease: false
64
120
  version_requirements: !ruby/object:Gem::Requirement
65
121
  requirements:
66
122
  - - "~>"
67
123
  - !ruby/object:Gem::Version
68
- version: '1.4'
124
+ version: '5.3'
125
+ - !ruby/object:Gem::Dependency
126
+ name: mocha
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '1.1'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '1.1'
139
+ - !ruby/object:Gem::Dependency
140
+ name: countloc
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '0.4'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '0.4'
153
+ - !ruby/object:Gem::Dependency
154
+ name: maruku
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.6'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.6'
167
+ - !ruby/object:Gem::Dependency
168
+ name: simplecov
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '0.7'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '0.7'
181
+ - !ruby/object:Gem::Dependency
182
+ name: yard
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '0.8'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '0.8'
195
+ - !ruby/object:Gem::Dependency
196
+ name: finstyle
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - '='
200
+ - !ruby/object:Gem::Version
201
+ version: 1.5.0
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - '='
207
+ - !ruby/object:Gem::Version
208
+ version: 1.5.0
209
+ - !ruby/object:Gem::Dependency
210
+ name: cane
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - '='
214
+ - !ruby/object:Gem::Version
215
+ version: 2.6.2
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - '='
221
+ - !ruby/object:Gem::Version
222
+ version: 2.6.2
69
223
  description: Test-Kitchen Provisioner that runs Chef Zero in a Scheduled Task
70
224
  email:
71
225
  - steven.murawski@gmail.com
@@ -73,13 +227,18 @@ executables: []
73
227
  extensions: []
74
228
  extra_rdoc_files: []
75
229
  files:
230
+ - ".cane"
76
231
  - ".gitignore"
232
+ - ".rubocop.yml"
233
+ - ".yardopts"
77
234
  - Gemfile
78
235
  - README.md
79
236
  - Rakefile
80
237
  - chef-zero-scheduled-task.gemspec
81
238
  - lib/chef/zero/scheduled/task/version.rb
82
239
  - lib/kitchen/provisioner/chef_zero_scheduled_task.rb
240
+ - spec/kitchen/provisioner/chef_zero_scheduled_task_spec.rb
241
+ - spec/spec_helper.rb
83
242
  homepage: https://github.com/smurawski/chef-zero-scheduled-task
84
243
  licenses:
85
244
  - Apache 2
@@ -95,14 +254,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
95
254
  version: '0'
96
255
  required_rubygems_version: !ruby/object:Gem::Requirement
97
256
  requirements:
98
- - - ">="
257
+ - - ">"
99
258
  - !ruby/object:Gem::Version
100
- version: '0'
259
+ version: 1.3.1
101
260
  requirements: []
102
261
  rubyforge_project:
103
262
  rubygems_version: 2.4.4
104
263
  signing_key:
105
264
  specification_version: 4
106
265
  summary: Test-Kitchen Provisioner that runs Chef Zero in a Scheduled Task
107
- test_files: []
266
+ test_files:
267
+ - spec/kitchen/provisioner/chef_zero_scheduled_task_spec.rb
268
+ - spec/spec_helper.rb
108
269
  has_rdoc: