chef-dk 1.2.22 → 1.3.40

Sign up to get free protection for your applications and to get access to all the features.
Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +8 -12
  3. data/Gemfile.lock +120 -116
  4. data/README.md +4 -3
  5. data/Rakefile +54 -0
  6. data/acceptance/Gemfile.lock +36 -47
  7. data/bin/chef +1 -1
  8. data/chef-dk.gemspec +9 -9
  9. data/lib/chef-dk/authenticated_http.rb +6 -7
  10. data/lib/chef-dk/builtin_commands.rb +3 -4
  11. data/lib/chef-dk/chef_runner.rb +7 -8
  12. data/lib/chef-dk/cli.rb +11 -11
  13. data/lib/chef-dk/command/base.rb +4 -4
  14. data/lib/chef-dk/command/clean_policy_cookbooks.rb +4 -5
  15. data/lib/chef-dk/command/clean_policy_revisions.rb +4 -6
  16. data/lib/chef-dk/command/delete_policy.rb +4 -6
  17. data/lib/chef-dk/command/delete_policy_group.rb +6 -8
  18. data/lib/chef-dk/command/diff.rb +9 -10
  19. data/lib/chef-dk/command/env.rb +26 -27
  20. data/lib/chef-dk/command/exec.rb +5 -6
  21. data/lib/chef-dk/command/export.rb +8 -10
  22. data/lib/chef-dk/command/gem.rb +5 -5
  23. data/lib/chef-dk/command/generate.rb +19 -19
  24. data/lib/chef-dk/command/generator_commands.rb +8 -8
  25. data/lib/chef-dk/command/generator_commands/app.rb +2 -3
  26. data/lib/chef-dk/command/generator_commands/attribute.rb +2 -3
  27. data/lib/chef-dk/command/generator_commands/base.rb +13 -13
  28. data/lib/chef-dk/command/generator_commands/build_cookbook.rb +2 -2
  29. data/lib/chef-dk/command/generator_commands/chef_exts/generator_desc_resource.rb +2 -2
  30. data/lib/chef-dk/command/generator_commands/chef_exts/quieter_doc_formatter.rb +1 -2
  31. data/lib/chef-dk/command/generator_commands/chef_exts/recipe_dsl_ext.rb +1 -2
  32. data/lib/chef-dk/command/generator_commands/cookbook.rb +2 -2
  33. data/lib/chef-dk/command/generator_commands/cookbook_code_file.rb +3 -3
  34. data/lib/chef-dk/command/generator_commands/cookbook_file.rb +2 -2
  35. data/lib/chef-dk/command/generator_commands/generator_generator.rb +4 -7
  36. data/lib/chef-dk/command/generator_commands/lwrp.rb +2 -2
  37. data/lib/chef-dk/command/generator_commands/policyfile.rb +2 -3
  38. data/lib/chef-dk/command/generator_commands/recipe.rb +2 -2
  39. data/lib/chef-dk/command/generator_commands/repo.rb +1 -3
  40. data/lib/chef-dk/command/generator_commands/template.rb +2 -2
  41. data/lib/chef-dk/command/install.rb +4 -5
  42. data/lib/chef-dk/command/provision.rb +12 -14
  43. data/lib/chef-dk/command/push.rb +5 -6
  44. data/lib/chef-dk/command/push_archive.rb +4 -5
  45. data/lib/chef-dk/command/shell_init.rb +15 -16
  46. data/lib/chef-dk/command/show_policy.rb +5 -7
  47. data/lib/chef-dk/command/undelete.rb +6 -7
  48. data/lib/chef-dk/command/update.rb +5 -6
  49. data/lib/chef-dk/command/verify.rb +30 -31
  50. data/lib/chef-dk/commands_map.rb +1 -3
  51. data/lib/chef-dk/component_test.rb +13 -13
  52. data/lib/chef-dk/configurable.rb +2 -2
  53. data/lib/chef-dk/cookbook_metadata.rb +2 -2
  54. data/lib/chef-dk/cookbook_omnifetch.rb +7 -8
  55. data/lib/chef-dk/cookbook_profiler/git.rb +8 -8
  56. data/lib/chef-dk/cookbook_profiler/identifiers.rb +7 -7
  57. data/lib/chef-dk/cookbook_profiler/null_scm.rb +0 -1
  58. data/lib/chef-dk/exceptions.rb +1 -1
  59. data/lib/chef-dk/generator.rb +9 -7
  60. data/lib/chef-dk/helpers.rb +15 -15
  61. data/lib/chef-dk/pager.rb +2 -3
  62. data/lib/chef-dk/policyfile/chef_repo_cookbook_source.rb +4 -4
  63. data/lib/chef-dk/policyfile/chef_server_cookbook_source.rb +6 -6
  64. data/lib/chef-dk/policyfile/community_cookbook_source.rb +4 -5
  65. data/lib/chef-dk/policyfile/comparison_base.rb +3 -4
  66. data/lib/chef-dk/policyfile/cookbook_location_specification.rb +6 -6
  67. data/lib/chef-dk/policyfile/cookbook_locks.rb +11 -11
  68. data/lib/chef-dk/policyfile/cookbook_sources.rb +5 -5
  69. data/lib/chef-dk/policyfile/delivery_supermarket_source.rb +8 -9
  70. data/lib/chef-dk/policyfile/differ.rb +7 -10
  71. data/lib/chef-dk/policyfile/dsl.rb +10 -11
  72. data/lib/chef-dk/policyfile/lister.rb +3 -6
  73. data/lib/chef-dk/policyfile/null_cookbook_source.rb +3 -3
  74. data/lib/chef-dk/policyfile/read_cookbook_for_compat_mode_upload.rb +3 -3
  75. data/lib/chef-dk/policyfile/reports/install.rb +3 -4
  76. data/lib/chef-dk/policyfile/reports/table_printer.rb +0 -1
  77. data/lib/chef-dk/policyfile/reports/upload.rb +4 -4
  78. data/lib/chef-dk/policyfile/solution_dependencies.rb +22 -22
  79. data/lib/chef-dk/policyfile/source_uri.rb +2 -2
  80. data/lib/chef-dk/policyfile/storage_config.rb +4 -5
  81. data/lib/chef-dk/policyfile/undo_record.rb +6 -9
  82. data/lib/chef-dk/policyfile/undo_stack.rb +5 -7
  83. data/lib/chef-dk/policyfile/uploader.rb +8 -8
  84. data/lib/chef-dk/policyfile_compiler.rb +16 -20
  85. data/lib/chef-dk/policyfile_lock.rb +10 -11
  86. data/lib/chef-dk/policyfile_services/clean_policies.rb +3 -3
  87. data/lib/chef-dk/policyfile_services/clean_policy_cookbooks.rb +3 -5
  88. data/lib/chef-dk/policyfile_services/export_repo.rb +13 -14
  89. data/lib/chef-dk/policyfile_services/install.rb +6 -6
  90. data/lib/chef-dk/policyfile_services/push.rb +6 -8
  91. data/lib/chef-dk/policyfile_services/push_archive.rb +6 -10
  92. data/lib/chef-dk/policyfile_services/rm_policy.rb +4 -5
  93. data/lib/chef-dk/policyfile_services/rm_policy_group.rb +4 -5
  94. data/lib/chef-dk/policyfile_services/show_policy.rb +5 -6
  95. data/lib/chef-dk/policyfile_services/undelete.rb +3 -3
  96. data/lib/chef-dk/policyfile_services/update_attributes.rb +4 -6
  97. data/lib/chef-dk/service_exception_inspectors.rb +2 -3
  98. data/lib/chef-dk/service_exception_inspectors/base.rb +0 -1
  99. data/lib/chef-dk/service_exception_inspectors/http.rb +1 -3
  100. data/lib/chef-dk/service_exceptions.rb +1 -2
  101. data/lib/chef-dk/shell_out.rb +1 -1
  102. data/lib/chef-dk/skeletons/code_generator/files/default/build_cookbook/.kitchen.yml +2 -2
  103. data/lib/chef-dk/skeletons/code_generator/files/default/build_cookbook/README.md +2 -2
  104. data/lib/chef-dk/skeletons/code_generator/files/default/build_cookbook/test-fixture-recipe.rb +1 -0
  105. data/lib/chef-dk/skeletons/code_generator/files/default/repo/cookbooks/example/attributes/default.rb +1 -1
  106. data/lib/chef-dk/skeletons/code_generator/files/default/repo/cookbooks/example/recipes/default.rb +1 -1
  107. data/lib/chef-dk/skeletons/code_generator/metadata.rb +0 -1
  108. data/lib/chef-dk/skeletons/code_generator/recipes/app.rb +6 -6
  109. data/lib/chef-dk/skeletons/code_generator/recipes/attribute.rb +3 -3
  110. data/lib/chef-dk/skeletons/code_generator/recipes/build_cookbook.rb +43 -39
  111. data/lib/chef-dk/skeletons/code_generator/recipes/cookbook.rb +31 -22
  112. data/lib/chef-dk/skeletons/code_generator/recipes/cookbook_file.rb +5 -5
  113. data/lib/chef-dk/skeletons/code_generator/recipes/lwrp.rb +4 -4
  114. data/lib/chef-dk/skeletons/code_generator/recipes/policyfile.rb +1 -1
  115. data/lib/chef-dk/skeletons/code_generator/recipes/recipe.rb +8 -8
  116. data/lib/chef-dk/skeletons/code_generator/recipes/repo.rb +15 -15
  117. data/lib/chef-dk/skeletons/code_generator/recipes/template.rb +6 -6
  118. data/lib/chef-dk/skeletons/code_generator/templates/default/build_cookbook/Berksfile.erb +0 -2
  119. data/lib/chef-dk/skeletons/code_generator/templates/default/build_cookbook/metadata.rb.erb +1 -0
  120. data/lib/chef-dk/skeletons/code_generator/templates/default/inspec_default_test.rb.erb +4 -4
  121. data/lib/chef-dk/skeletons/code_generator/templates/default/kitchen.yml.erb +1 -1
  122. data/lib/chef-dk/skeletons/code_generator/templates/default/kitchen_policyfile.yml.erb +1 -1
  123. data/lib/chef-dk/skeletons/code_generator/templates/default/metadata.rb.erb +4 -3
  124. data/lib/chef-dk/skeletons/code_generator/templates/default/recipe_spec.rb.erb +4 -2
  125. data/lib/chef-dk/ui.rb +0 -1
  126. data/lib/chef-dk/version.rb +1 -1
  127. data/lib/kitchen/provisioner/policyfile_zero.rb +7 -7
  128. data/omnibus_overrides.rb +3 -3
  129. data/spec/shared/a_file_generator.rb +3 -3
  130. data/spec/shared/custom_generator_cookbook.rb +6 -6
  131. data/spec/shared/fixture_cookbook_checksums.rb +2 -3
  132. data/spec/shared/setup_git_committer_config.rb +1 -1
  133. data/spec/shared/setup_git_cookbooks.rb +2 -2
  134. data/spec/spec_helper.rb +5 -5
  135. data/spec/test_helpers.rb +2 -2
  136. data/spec/unit/chef_runner_spec.rb +5 -7
  137. data/spec/unit/cli_spec.rb +36 -37
  138. data/spec/unit/command/base_spec.rb +4 -5
  139. data/spec/unit/command/clean_policy_cookbooks_spec.rb +8 -9
  140. data/spec/unit/command/clean_policy_revisions_spec.rb +8 -9
  141. data/spec/unit/command/delete_policy_group_spec.rb +11 -12
  142. data/spec/unit/command/delete_policy_spec.rb +11 -12
  143. data/spec/unit/command/diff_spec.rb +5 -6
  144. data/spec/unit/command/env_spec.rb +5 -5
  145. data/spec/unit/command/exec_spec.rb +18 -19
  146. data/spec/unit/command/export_spec.rb +5 -6
  147. data/spec/unit/command/generate_spec.rb +10 -10
  148. data/spec/unit/command/generator_commands/app_spec.rb +6 -6
  149. data/spec/unit/command/generator_commands/attribute_spec.rb +3 -4
  150. data/spec/unit/command/generator_commands/base_spec.rb +46 -46
  151. data/spec/unit/command/generator_commands/build_cookbook_spec.rb +50 -16
  152. data/spec/unit/command/generator_commands/chef_exts/generator_desc_resource_spec.rb +9 -9
  153. data/spec/unit/command/generator_commands/chef_exts/recipe_dsl_ext_spec.rb +16 -16
  154. data/spec/unit/command/generator_commands/cookbook_file_spec.rb +3 -4
  155. data/spec/unit/command/generator_commands/cookbook_spec.rb +23 -26
  156. data/spec/unit/command/generator_commands/generator_generator_spec.rb +4 -6
  157. data/spec/unit/command/generator_commands/lwrp_spec.rb +3 -4
  158. data/spec/unit/command/generator_commands/policyfile_spec.rb +3 -5
  159. data/spec/unit/command/generator_commands/recipe_spec.rb +4 -4
  160. data/spec/unit/command/generator_commands/repo_spec.rb +11 -11
  161. data/spec/unit/command/generator_commands/template_spec.rb +3 -4
  162. data/spec/unit/command/install_spec.rb +6 -6
  163. data/spec/unit/command/provision_spec.rb +27 -30
  164. data/spec/unit/command/push_archive_spec.rb +3 -3
  165. data/spec/unit/command/push_spec.rb +5 -6
  166. data/spec/unit/command/shell_init_spec.rb +17 -19
  167. data/spec/unit/command/show_policy_spec.rb +11 -12
  168. data/spec/unit/command/undelete_spec.rb +12 -14
  169. data/spec/unit/command/update_spec.rb +8 -8
  170. data/spec/unit/command/verify_spec.rb +10 -10
  171. data/spec/unit/commands_map_spec.rb +4 -4
  172. data/spec/unit/component_test_spec.rb +3 -3
  173. data/spec/unit/configurable_spec.rb +7 -7
  174. data/spec/unit/cookbook_metadata_spec.rb +5 -7
  175. data/spec/unit/cookbook_profiler/git_spec.rb +6 -7
  176. data/spec/unit/cookbook_profiler/identifiers_spec.rb +5 -7
  177. data/spec/unit/fixtures/command/cli_test_command.rb +2 -2
  178. data/spec/unit/fixtures/configurable/test_configurable.rb +1 -1
  179. data/spec/unit/fixtures/cookbooks_api/update_fixtures.rb +13 -16
  180. data/spec/unit/fixtures/eg_omnibus_dir/valid/embedded/apps/berkshelf/verify_me +1 -1
  181. data/spec/unit/gemfile_util_spec.rb +4 -4
  182. data/spec/unit/generator_spec.rb +10 -10
  183. data/spec/unit/helpers_spec.rb +31 -31
  184. data/spec/unit/pager_spec.rb +5 -7
  185. data/spec/unit/policyfile/chef_repo_cookbook_source_spec.rb +11 -11
  186. data/spec/unit/policyfile/chef_server_cookbook_source_spec.rb +13 -13
  187. data/spec/unit/policyfile/community_cookbook_source_spec.rb +3 -4
  188. data/spec/unit/policyfile/comparison_base_spec.rb +3 -6
  189. data/spec/unit/policyfile/cookbook_location_specification_spec.rb +3 -3
  190. data/spec/unit/policyfile/cookbook_locks_spec.rb +7 -9
  191. data/spec/unit/policyfile/delivery_supermarket_source_spec.rb +16 -17
  192. data/spec/unit/policyfile/differ_spec.rb +4 -5
  193. data/spec/unit/policyfile/lister_spec.rb +31 -35
  194. data/spec/unit/policyfile/null_cookbook_source_spec.rb +2 -3
  195. data/spec/unit/policyfile/read_cookbook_for_compat_mode_upload_spec.rb +3 -3
  196. data/spec/unit/policyfile/reports/install_spec.rb +4 -5
  197. data/spec/unit/policyfile/reports/upload_spec.rb +4 -6
  198. data/spec/unit/policyfile/solution_dependencies_spec.rb +13 -13
  199. data/spec/unit/policyfile/source_uri_spec.rb +5 -5
  200. data/spec/unit/policyfile/storage_config_spec.rb +3 -7
  201. data/spec/unit/policyfile/undo_record_spec.rb +21 -23
  202. data/spec/unit/policyfile/undo_stack_spec.rb +5 -6
  203. data/spec/unit/policyfile/uploader_spec.rb +73 -75
  204. data/spec/unit/policyfile_demands_spec.rb +93 -99
  205. data/spec/unit/policyfile_evaluation_spec.rb +14 -14
  206. data/spec/unit/policyfile_lock_build_spec.rb +64 -65
  207. data/spec/unit/policyfile_lock_install_spec.rb +5 -6
  208. data/spec/unit/policyfile_lock_serialization_spec.rb +14 -15
  209. data/spec/unit/policyfile_lock_validation_spec.rb +17 -20
  210. data/spec/unit/policyfile_services/clean_policies_spec.rb +16 -16
  211. data/spec/unit/policyfile_services/clean_policy_cookbooks_spec.rb +26 -29
  212. data/spec/unit/policyfile_services/export_repo_spec.rb +3 -6
  213. data/spec/unit/policyfile_services/install_spec.rb +5 -7
  214. data/spec/unit/policyfile_services/push_archive_spec.rb +4 -8
  215. data/spec/unit/policyfile_services/push_spec.rb +3 -3
  216. data/spec/unit/policyfile_services/rm_policy_group_spec.rb +16 -20
  217. data/spec/unit/policyfile_services/rm_policy_spec.rb +14 -17
  218. data/spec/unit/policyfile_services/show_policy_spec.rb +78 -80
  219. data/spec/unit/policyfile_services/undelete_spec.rb +5 -7
  220. data/spec/unit/policyfile_services/update_attributes_spec.rb +34 -35
  221. data/spec/unit/service_exception_inspectors/base_spec.rb +2 -4
  222. data/spec/unit/service_exception_inspectors/http_spec.rb +9 -11
  223. data/spec/unit/shell_out_spec.rb +2 -2
  224. data/spec/unit/tasks/helpers_spec.rb +2 -2
  225. data/tasks/bin/bundle-platform +1 -1
  226. data/tasks/bundle_util.rb +1 -1
  227. data/tasks/dependencies.rb +21 -7
  228. data/tasks/gemfile_util.rb +1 -1
  229. data/tasks/helpers.rb +2 -2
  230. data/tasks/version.rb +26 -1
  231. data/version_policy.rb +6 -6
  232. metadata +3 -3
@@ -15,10 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/command/base'
19
- require 'chef-dk/ui'
20
- require 'chef-dk/policyfile_services/push_archive'
21
- require 'chef-dk/configurable'
18
+ require "chef-dk/command/base"
19
+ require "chef-dk/ui"
20
+ require "chef-dk/policyfile_services/push_archive"
21
+ require "chef-dk/configurable"
22
22
 
23
23
  module ChefDK
24
24
  module Command
@@ -123,4 +123,3 @@ E
123
123
  end
124
124
  end
125
125
  end
126
-
@@ -15,12 +15,12 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'erb'
18
+ require "erb"
19
19
 
20
- require 'chef-dk/commands_map'
21
- require 'chef-dk/builtin_commands'
22
- require 'chef-dk/command/base'
23
- require 'mixlib/shellout'
20
+ require "chef-dk/commands_map"
21
+ require "chef-dk/builtin_commands"
22
+ require "chef-dk/command/base"
23
+ require "mixlib/shellout"
24
24
 
25
25
  module ChefDK
26
26
 
@@ -41,7 +41,7 @@ module ChefDK
41
41
  module Command
42
42
  class ShellInit < ChefDK::Command::Base
43
43
 
44
- SUPPORTED_SHELLS = %w[ bash fish zsh sh powershell posh].map(&:freeze).freeze
44
+ SUPPORTED_SHELLS = %w{ bash fish zsh sh powershell posh}.map(&:freeze).freeze
45
45
 
46
46
  banner(<<-HELP)
47
47
  Usage: chef shell-init
@@ -117,7 +117,7 @@ HELP
117
117
  def completion_for(shell)
118
118
  return "" unless (completion_template_basename = completion_template_for(shell))
119
119
  completion_template_path = expand_completion_template_path(completion_template_basename)
120
- erb = ERB.new(File.read(completion_template_path), nil, '-')
120
+ erb = ERB.new(File.read(completion_template_path), nil, "-")
121
121
  context_binding = shell_completion_template_context.get_binding
122
122
  erb.result(context_binding)
123
123
  end
@@ -134,7 +134,6 @@ HELP
134
134
  # Pull requests accepted!
135
135
  nil
136
136
  end
137
-
138
137
  end
139
138
 
140
139
  def expand_completion_template_path(basename)
@@ -147,17 +146,17 @@ HELP
147
146
 
148
147
  def export(shell, var, val)
149
148
  case shell
150
- when 'sh', 'bash', 'zsh'
149
+ when "sh", "bash", "zsh"
151
150
  posix_shell_export(var, val)
152
- when 'fish'
151
+ when "fish"
153
152
  fish_shell_export(var, val)
154
- when 'powershell', 'posh'
153
+ when "powershell", "posh"
155
154
  powershell_export(var, val)
156
155
  end
157
156
  end
158
157
 
159
158
  def posix_shell_export(var, val)
160
- emit_shell_cmd(%Q(export #{var}="#{val}"))
159
+ emit_shell_cmd(%Q{export #{var}="#{val}"})
161
160
  end
162
161
 
163
162
  def fish_shell_export(var, val)
@@ -165,15 +164,15 @@ HELP
165
164
  # divided by spaces (instead of colons). We also send STDERR to
166
165
  # /dev/null to avoid Fish's helpful warnings about nonexistent
167
166
  # PATH elements.
168
- if var == 'PATH'
169
- emit_shell_cmd(%Q(set -gx #{var} "#{val.split(':').join('" "')}" 2>/dev/null;))
167
+ if var == "PATH"
168
+ emit_shell_cmd(%Q{set -gx #{var} "#{val.split(':').join('" "')}" 2>/dev/null;})
170
169
  else
171
- emit_shell_cmd(%Q(set -gx #{var} "#{val}";))
170
+ emit_shell_cmd(%Q{set -gx #{var} "#{val}";})
172
171
  end
173
172
  end
174
173
 
175
174
  def powershell_export(var, val)
176
- emit_shell_cmd(%Q($env:#{var}="#{val}"))
175
+ emit_shell_cmd(%Q{$env:#{var}="#{val}"})
177
176
  end
178
177
  end
179
178
  end
@@ -15,16 +15,15 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/command/base'
19
- require 'chef-dk/ui'
20
- require 'chef-dk/configurable'
21
- require 'chef-dk/policyfile/lister'
22
- require 'chef-dk/policyfile_services/show_policy'
18
+ require "chef-dk/command/base"
19
+ require "chef-dk/ui"
20
+ require "chef-dk/configurable"
21
+ require "chef-dk/policyfile/lister"
22
+ require "chef-dk/policyfile_services/show_policy"
23
23
 
24
24
  module ChefDK
25
25
  module Command
26
26
 
27
-
28
27
  class ShowPolicy < Base
29
28
 
30
29
  banner(<<-BANNER)
@@ -162,4 +161,3 @@ BANNER
162
161
  end
163
162
  end
164
163
  end
165
-
@@ -15,10 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/command/base'
19
- require 'chef-dk/ui'
20
- require 'chef-dk/configurable'
21
- require 'chef-dk/policyfile_services/undelete'
18
+ require "chef-dk/command/base"
19
+ require "chef-dk/ui"
20
+ require "chef-dk/configurable"
21
+ require "chef-dk/policyfile_services/undelete"
22
22
 
23
23
  module ChefDK
24
24
  module Command
@@ -102,8 +102,8 @@ BANNER
102
102
  def undelete_service
103
103
  @undelete_service ||=
104
104
  PolicyfileServices::Undelete.new(config: chef_config,
105
- ui: ui,
106
- undo_record_id: undo_record_id)
105
+ ui: ui,
106
+ undo_record_id: undo_record_id)
107
107
  end
108
108
 
109
109
  def debug?
@@ -152,4 +152,3 @@ BANNER
152
152
  end
153
153
  end
154
154
  end
155
-
@@ -15,11 +15,11 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/command/base'
19
- require 'chef-dk/ui'
20
- require 'chef-dk/policyfile_services/install'
21
- require 'chef-dk/policyfile_services/update_attributes'
22
- require 'chef-dk/configurable'
18
+ require "chef-dk/command/base"
19
+ require "chef-dk/ui"
20
+ require "chef-dk/policyfile_services/install"
21
+ require "chef-dk/policyfile_services/update_attributes"
22
+ require "chef-dk/configurable"
23
23
 
24
24
  module ChefDK
25
25
  module Command
@@ -145,4 +145,3 @@ BANNER
145
145
  end
146
146
  end
147
147
  end
148
-
@@ -15,9 +15,9 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/command/base'
19
- require 'chef-dk/exceptions'
20
- require 'chef-dk/component_test'
18
+ require "chef-dk/command/base"
19
+ require "chef-dk/exceptions"
20
+ require "chef-dk/component_test"
21
21
 
22
22
  module ChefDK
23
23
  module Command
@@ -44,7 +44,7 @@ module ChefDK
44
44
  :description => "Display all test output, not just failing tests"
45
45
 
46
46
  class << self
47
- def add_component(name, _delete_me=nil)
47
+ def add_component(name, _delete_me = nil)
48
48
  component = ComponentTest.new(name)
49
49
  yield component if block_given? #delete this conditional
50
50
  component_map[name] = component
@@ -92,7 +92,7 @@ module ChefDK
92
92
 
93
93
  c.smoke_test do
94
94
  tmpdir do |cwd|
95
- FileUtils.touch(File.join(cwd,"Berksfile"))
95
+ FileUtils.touch(File.join(cwd, "Berksfile"))
96
96
  sh("#{bin("berks")} install", cwd: cwd)
97
97
  end
98
98
  end
@@ -215,7 +215,7 @@ KITCHEN_YML
215
215
  def format_gem_failure(name, versions)
216
216
  <<-EOS
217
217
  #{name} has multiple versions installed:
218
- #{versions.sort.map { |gv| " #{gv.to_s}" }.join("\n")}
218
+ #{versions.sort.map { |gv| " #{gv}" }.join("\n")}
219
219
  EOS
220
220
  end
221
221
 
@@ -237,7 +237,7 @@ EOS
237
237
  # ------------
238
238
  # load the core gem and all of the drivers (ignoring versions).
239
239
  require "chef/provisioning"
240
- drivers.map { |d| "#{d.gsub('-', '/')}_driver" }.each do |driver_gem|
240
+ drivers.map { |d| "#{d.tr('-', '/')}_driver" }.each do |driver_gem|
241
241
  begin
242
242
  begin
243
243
  require driver_gem
@@ -258,18 +258,18 @@ EOS
258
258
 
259
259
  # write out the gemfile for this chef-provisioning version, and see if Bundler can make it go.
260
260
  with_file(File.join(cwd, gemfile)) do |f|
261
- f.puts %Q(gem "chef-provisioning", "= #{provisioning_version}")
262
- drivers.each { |d| f.puts %Q(gem "#{d}") }
261
+ f.puts %Q{gem "chef-provisioning", "= #{provisioning_version}"}
262
+ drivers.each { |d| f.puts %Q{gem "#{d}"} }
263
263
  end
264
264
 
265
265
  result = bundle_install_mutex.synchronize do
266
- sh("#{embedded_bin("bundle")} install --local --quiet", cwd: cwd, env: {"BUNDLE_GEMFILE" => gemfile })
266
+ sh("#{embedded_bin("bundle")} install --local --quiet", cwd: cwd, env: { "BUNDLE_GEMFILE" => gemfile })
267
267
  end
268
268
 
269
269
  if result.exitstatus != 0
270
270
  failures << result.stdout
271
271
  end
272
- end # end provisioning versions.
272
+ end # end provisioning versions.
273
273
 
274
274
  failures.each { |fail| puts fail }
275
275
 
@@ -281,7 +281,6 @@ EOS
281
281
  end
282
282
  end
283
283
 
284
-
285
284
  add_component "chefspec" do |c|
286
285
  c.gem_base_dir = "chefspec"
287
286
  c.unit_test do
@@ -329,7 +328,7 @@ require 'spec_helper'
329
328
  c.gem_base_dir = "rubocop"
330
329
  c.smoke_test do
331
330
  tmpdir do |cwd|
332
- with_file(File.join(cwd, 'foo.rb')) do |f|
331
+ with_file(File.join(cwd, "foo.rb")) do |f|
333
332
  f.write <<-EOF
334
333
  def foo
335
334
  puts 'foo'
@@ -348,7 +347,7 @@ end
348
347
 
349
348
  add_component "knife-spork" do |c|
350
349
  c.gem_base_dir = "knife-spork"
351
- c.smoke_test { sh("#{bin("knife")} spork info")}
350
+ c.smoke_test { sh("#{bin("knife")} spork info") }
352
351
  end
353
352
 
354
353
  add_component "kitchen-vagrant" do |c|
@@ -468,34 +467,34 @@ end
468
467
  add_component "git" do |c|
469
468
  c.base_dir = "embedded/bin"
470
469
  c.smoke_test do
471
- tmpdir do |cwd|
470
+ tmpdir do |cwd|
472
471
  sh!("#{embedded_bin("git")} config -l")
473
- sh!("#{embedded_bin("git")} clone https://github.com/chef/chef-provisioning", cwd: cwd)
474
- end
472
+ sh!("#{embedded_bin("git")} clone https://github.com/chef/chef-provisioning", cwd: cwd)
473
+ end
475
474
  end
476
475
  end
477
476
  else
478
477
  add_component "git" do |c|
479
478
  c.base_dir = "gitbin"
480
479
  c.smoke_test do
481
- tmpdir do |cwd|
480
+ tmpdir do |cwd|
482
481
  sh!("#{File.join(omnibus_root, "gitbin", "git")} config -l")
483
- sh!("#{File.join(omnibus_root, "gitbin", "git")} clone https://github.com/chef/chef-provisioning", cwd: cwd)
482
+ sh!("#{File.join(omnibus_root, "gitbin", "git")} clone https://github.com/chef/chef-provisioning", cwd: cwd)
484
483
 
485
- # If /usr/bin/git is a symlink, fail the test.
486
- # Note that this test cannot go last because it does not return a
487
- # Mixlib::Shellout object in the windows case, which will break the tests.
484
+ # If /usr/bin/git is a symlink, fail the test.
485
+ # Note that this test cannot go last because it does not return a
486
+ # Mixlib::Shellout object in the windows case, which will break the tests.
488
487
  failure_str = "#{nix_platform_native_bin_dir}/git contains a symlink which might mean we accidentally overwrote system git via chefdk."
489
488
  result = sh("readlink #{nix_platform_native_bin_dir}/git")
490
489
  # if a symlink was found, test to see if it is in a chefdk install
491
490
  if result.status.exitstatus == 0
492
- raise failure_str if result.stdout =~ /chefdk/
491
+ raise failure_str if result.stdout =~ /chefdk/
493
492
  end
494
493
 
495
- # <chef_dk>/bin/ should not contain a git binary.
496
- failure_str = "`<chef_dk>/bin/git --help` should fail as git should be installed in gitbin"
497
- fail_if_exit_zero("#{bin("git")} --help", failure_str)
498
- end
494
+ # <chef_dk>/bin/ should not contain a git binary.
495
+ failure_str = "`<chef_dk>/bin/git --help` should fail as git should be installed in gitbin"
496
+ fail_if_exit_zero("#{bin("git")} --help", failure_str)
497
+ end
499
498
  end
500
499
  end
501
500
  end
@@ -520,7 +519,7 @@ end
520
519
  c.gem_base_dir = "chef-sugar"
521
520
  c.smoke_test do
522
521
  tmpdir do |cwd|
523
- with_file(File.join(cwd, 'foo.rb')) do |f|
522
+ with_file(File.join(cwd, "foo.rb")) do |f|
524
523
  f.write <<-EOF
525
524
  require 'chef/sugar'
526
525
  log 'something' do
@@ -593,7 +592,7 @@ end
593
592
  results << component.run_integration_test
594
593
  end
595
594
 
596
- if results.any? {|r| r.exitstatus != 0 }
595
+ if results.any? { |r| r.exitstatus != 0 }
597
596
  component_status = 1
598
597
  @verification_status = 1
599
598
  else
@@ -603,7 +602,7 @@ end
603
602
  {
604
603
  :component => component,
605
604
  :results => results,
606
- :component_status => component_status
605
+ :component_status => component_status,
607
606
  }
608
607
  end
609
608
 
@@ -612,7 +611,7 @@ end
612
611
  end
613
612
 
614
613
  def wait_for_tests
615
- while !verification_threads.empty?
614
+ until verification_threads.empty?
616
615
  verification_threads.each do |t|
617
616
  if t.join(1)
618
617
  verification_threads.delete t
@@ -74,7 +74,7 @@ module ChefDK
74
74
 
75
75
  def builtin(name, constant_name, require_path: NULL_ARG, desc: "")
76
76
  if null?(require_path)
77
- snake_case_path = name.gsub("-", "_")
77
+ snake_case_path = name.tr("-", "_")
78
78
  require_path = "chef-dk/command/#{snake_case_path}"
79
79
  end
80
80
  command_specs[name] = CommandSpec.new(name, constant_name, require_path, desc)
@@ -111,5 +111,3 @@ module ChefDK
111
111
  yield commands_map
112
112
  end
113
113
  end
114
-
115
-
@@ -15,8 +15,8 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/exceptions'
19
- require 'chef-dk/helpers'
18
+ require "chef-dk/exceptions"
19
+ require "chef-dk/helpers"
20
20
 
21
21
  # https://github.com/bundler/bundler/issues/4368
22
22
  # As of rubygems 2.6.2, Rubygems will call Bundler::SpecSet#size, which does
@@ -107,7 +107,7 @@ module ChefDK
107
107
  File.join(omnibus_embedded_bin_dir, binary)
108
108
  end
109
109
 
110
- def sh(command, options={})
110
+ def sh(command, options = {})
111
111
  combined_opts = default_command_options.merge(options)
112
112
 
113
113
  # Env is a hash, so it needs to be merged separately
@@ -132,15 +132,15 @@ module ChefDK
132
132
  # otherwise, if it returns non-zero or doesn't exist,
133
133
  # return a passing command so that the test parser doesn't
134
134
  # crash.
135
- def fail_if_exit_zero(cmd_string, failure_string='')
135
+ def fail_if_exit_zero(cmd_string, failure_string = "")
136
136
  result = sh(cmd_string)
137
137
  if result.status.exitstatus == 0
138
- raise failure_string
138
+ raise failure_string
139
139
  else
140
- sh('true')
140
+ sh("true")
141
141
  end
142
142
  rescue Errno::ENOENT
143
- sh('true')
143
+ sh("true")
144
144
  end
145
145
 
146
146
  def nix_platform_native_bin_dir
@@ -153,7 +153,7 @@ module ChefDK
153
153
  end
154
154
  end
155
155
 
156
- def run_in_tmpdir(command, options={})
156
+ def run_in_tmpdir(command, options = {})
157
157
  tmpdir do |dir|
158
158
  options[:cwd] = dir
159
159
  sh(command, options)
@@ -180,9 +180,9 @@ module ChefDK
180
180
  :env => {
181
181
  # Add the embedded/bin to the PATH so that bundle executable can
182
182
  # be found while running the tests.
183
- path_variable_key => omnibus_path
183
+ path_variable_key => omnibus_path,
184
184
  },
185
- :timeout => 3600
185
+ :timeout => 3600,
186
186
  }
187
187
  end
188
188
 
@@ -203,7 +203,7 @@ module ChefDK
203
203
  # is a prerelease version. ">= 0.a" is how we ask for a prerelease version, because a
204
204
  # prerelease version is defined as "any version with a letter in it."
205
205
  gem = Gem::Specification.find_by_name(@gem_name_for_base_dir)
206
- gem ||= Gem::Specification.find_by_name(@gem_name_for_base_dir, '>= 0.a')
206
+ gem ||= Gem::Specification.find_by_name(@gem_name_for_base_dir, ">= 0.a")
207
207
  gem.gem_dir
208
208
  end
209
209
 
@@ -212,11 +212,11 @@ module ChefDK
212
212
  end
213
213
 
214
214
  def omnibus_root
215
- @omnibus_root or raise "`omnibus_root` must be set before running tests"
215
+ @omnibus_root || raise("`omnibus_root` must be set before running tests")
216
216
  end
217
217
 
218
218
  def omnibus_path
219
- [omnibus_bin_dir, omnibus_embedded_bin_dir, ENV['PATH']].join(File::PATH_SEPARATOR)
219
+ [omnibus_bin_dir, omnibus_embedded_bin_dir, ENV["PATH"]].join(File::PATH_SEPARATOR)
220
220
  end
221
221
 
222
222
  def path_variable_key