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,13 +15,13 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'ffi_yajl'
18
+ require "ffi_yajl"
19
19
 
20
- require 'chef-dk/service_exceptions'
21
- require 'chef-dk/authenticated_http'
22
- require 'chef-dk/policyfile_compiler'
23
- require 'chef-dk/policyfile/uploader'
24
- require 'chef-dk/policyfile/storage_config'
20
+ require "chef-dk/service_exceptions"
21
+ require "chef-dk/authenticated_http"
22
+ require "chef-dk/policyfile_compiler"
23
+ require "chef-dk/policyfile/uploader"
24
+ require "chef-dk/policyfile/storage_config"
25
25
 
26
26
  module ChefDK
27
27
  module PolicyfileServices
@@ -77,7 +77,6 @@ module ChefDK
77
77
  validate_lockfile
78
78
  write_updated_lockfile
79
79
  upload_policy
80
-
81
80
  end
82
81
 
83
82
  def policyfile_lock
@@ -111,4 +110,3 @@ module ChefDK
111
110
  end
112
111
  end
113
112
  end
114
-
@@ -15,13 +15,13 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'zlib'
19
- require 'archive/tar/minitar'
18
+ require "zlib"
19
+ require "archive/tar/minitar"
20
20
 
21
- require 'chef-dk/service_exceptions'
22
- require 'chef-dk/policyfile_lock'
23
- require 'chef-dk/authenticated_http'
24
- require 'chef-dk/policyfile/uploader'
21
+ require "chef-dk/service_exceptions"
22
+ require "chef-dk/policyfile_lock"
23
+ require "chef-dk/authenticated_http"
24
+ require "chef-dk/policyfile/uploader"
25
25
 
26
26
  module ChefDK
27
27
  module PolicyfileServices
@@ -37,7 +37,6 @@ module ChefDK
37
37
 
38
38
  attr_reader :policyfile_lock
39
39
 
40
-
41
40
  def initialize(archive_file: nil, policy_group: nil, root_dir: nil, ui: nil, config: nil)
42
41
  @archive_file = archive_file
43
42
  @policy_group = policy_group
@@ -104,7 +103,6 @@ MESSAGE
104
103
  raise InvalidPolicyArchive, "Archive does not contain a cookbook_artifacts directory"
105
104
  end
106
105
 
107
-
108
106
  policy_data = load_policy_data(policyfile_lock_path)
109
107
  storage_config = Policyfile::StorageConfig.new.use_policyfile_lock(policyfile_lock_path)
110
108
  @policyfile_lock = ChefDK::PolicyfileLock.new(storage_config).build_from_archive(policy_data)
@@ -118,7 +116,6 @@ MESSAGE
118
116
  "Missing cookbooks: '#{missing_cookbooks.keys.join('", "')}'."
119
117
  raise InvalidPolicyArchive, message
120
118
  end
121
-
122
119
  end
123
120
 
124
121
  def load_policy_data(policyfile_lock_path)
@@ -132,7 +129,6 @@ MESSAGE
132
129
  unpack_to(staging_dir)
133
130
  yield staging_dir
134
131
  end
135
-
136
132
  end
137
133
 
138
134
  def unpack_to(staging_dir)
@@ -15,10 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/service_exceptions'
19
- require 'chef-dk/authenticated_http'
20
- require 'chef-dk/policyfile/undo_stack'
21
- require 'chef-dk/policyfile/undo_record'
18
+ require "chef-dk/service_exceptions"
19
+ require "chef-dk/authenticated_http"
20
+ require "chef-dk/policyfile/undo_stack"
21
+ require "chef-dk/policyfile/undo_record"
22
22
 
23
23
  module ChefDK
24
24
  module PolicyfileServices
@@ -139,4 +139,3 @@ module ChefDK
139
139
  end
140
140
  end
141
141
  end
142
-
@@ -15,10 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/service_exceptions'
19
- require 'chef-dk/authenticated_http'
20
- require 'chef-dk/policyfile/undo_stack'
21
- require 'chef-dk/policyfile/undo_record'
18
+ require "chef-dk/service_exceptions"
19
+ require "chef-dk/authenticated_http"
20
+ require "chef-dk/policyfile/undo_stack"
21
+ require "chef-dk/policyfile/undo_record"
22
22
 
23
23
  module ChefDK
24
24
  module PolicyfileServices
@@ -83,4 +83,3 @@ module ChefDK
83
83
  end
84
84
  end
85
85
  end
86
-
@@ -15,9 +15,9 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/policyfile/comparison_base'
19
- require 'chef-dk/policyfile/lister'
20
- require 'chef-dk/pager'
18
+ require "chef-dk/policyfile/comparison_base"
19
+ require "chef-dk/policyfile/lister"
20
+ require "chef-dk/pager"
21
21
 
22
22
  module ChefDK
23
23
  module PolicyfileServices
@@ -214,7 +214,7 @@ module ChefDK
214
214
  end
215
215
 
216
216
  def shorten_rev_id(revision_id)
217
- revision_id[0,10]
217
+ revision_id[0, 10]
218
218
  end
219
219
 
220
220
  def http_client
@@ -227,11 +227,10 @@ module ChefDK
227
227
 
228
228
  def format_rev_ids_for_report(rev_id_by_group)
229
229
  rev_id_by_group.format_revision_ids do |rev_id|
230
- rev_id ? rev_id[0,10] : "*NOT APPLIED*"
230
+ rev_id ? rev_id[0, 10] : "*NOT APPLIED*"
231
231
  end
232
232
  end
233
233
 
234
-
235
234
  end
236
235
  end
237
236
  end
@@ -15,9 +15,9 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/authenticated_http'
19
- require 'chef-dk/service_exceptions'
20
- require 'chef-dk/policyfile/undo_stack'
18
+ require "chef-dk/authenticated_http"
19
+ require "chef-dk/service_exceptions"
20
+ require "chef-dk/policyfile/undo_stack"
21
21
 
22
22
  module ChefDK
23
23
  module PolicyfileServices
@@ -15,10 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/helpers'
19
- require 'chef-dk/policyfile/storage_config'
20
- require 'chef-dk/service_exceptions'
21
- require 'chef-dk/policyfile_compiler'
18
+ require "chef-dk/helpers"
19
+ require "chef-dk/policyfile/storage_config"
20
+ require "chef-dk/service_exceptions"
21
+ require "chef-dk/policyfile_compiler"
22
22
 
23
23
  module ChefDK
24
24
  module PolicyfileServices
@@ -88,7 +88,6 @@ module ChefDK
88
88
  end
89
89
  end
90
90
 
91
-
92
91
  def assert_policy_and_lock_present!
93
92
  unless File.exist?(policyfile_expanded_path)
94
93
  raise PolicyfileNotFound, "Policyfile not found at path #{policyfile_expanded_path}"
@@ -101,4 +100,3 @@ module ChefDK
101
100
  end
102
101
  end
103
102
  end
104
-
@@ -15,11 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'chef-dk/service_exception_inspectors/base'
19
- require 'chef-dk/service_exception_inspectors/http'
18
+ require "chef-dk/service_exception_inspectors/base"
19
+ require "chef-dk/service_exception_inspectors/http"
20
20
 
21
21
  module ChefDK
22
22
  module ServiceExceptionInspectors
23
23
  end
24
24
  end
25
-
@@ -37,4 +37,3 @@ module ChefDK
37
37
  end
38
38
  end
39
39
  end
40
-
@@ -15,7 +15,7 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'ffi_yajl'
18
+ require "ffi_yajl"
19
19
 
20
20
  module ChefDK
21
21
  module ServiceExceptionInspectors
@@ -117,5 +117,3 @@ END
117
117
  end
118
118
  end
119
119
  end
120
-
121
-
@@ -20,7 +20,7 @@
20
20
  # dependencies, so they are split into their own file here.
21
21
  ##
22
22
 
23
- require 'chef-dk/service_exception_inspectors'
23
+ require "chef-dk/service_exception_inspectors"
24
24
 
25
25
  module ChefDK
26
26
 
@@ -140,4 +140,3 @@ module ChefDK
140
140
  class ChefConvergeError < ChefRunnerError; end
141
141
 
142
142
  end
143
-
@@ -15,7 +15,7 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require 'mixlib/shellout'
18
+ require "mixlib/shellout"
19
19
 
20
20
  module ChefDK
21
21
 
@@ -8,14 +8,14 @@ provisioner:
8
8
  name: chef_zero
9
9
  encrypted_data_bag_secret_key_path: 'secrets/fakey-mcfakerton'
10
10
  data_bags_path: './data_bags'
11
+ product_name: chefdk
11
12
 
12
13
  platforms:
13
14
  - name: ubuntu-16.04
14
- - name: centos-7.2
15
+ - name: centos-7.3
15
16
 
16
17
  suites:
17
18
  - name: default
18
19
  run_list:
19
- - recipe[delivery_build::default]
20
20
  - recipe[test]
21
21
  attributes:
@@ -47,9 +47,9 @@ The change we'll use for an example is to install the `zsh` package. Write a fai
47
47
  require 'spec_helper'
48
48
 
49
49
  describe 'godzilla::default' do
50
- context 'When all attributes are default, on an unspecified platform' do
50
+ context 'When all attributes are default, on Ubuntu 16.04' do
51
51
  let(:chef_run) do
52
- runner = ChefSpec::ServerRunner.new
52
+ runner = ChefSpec::ServerRunner.new(platform: 'ubuntu', version: '16.04')
53
53
  runner.converge(described_recipe)
54
54
  end
55
55
 
@@ -3,5 +3,6 @@
3
3
  execute "HOME=/home/vagrant delivery job verify #{phase} --server localhost --ent test --org kitchen" do
4
4
  cwd '/tmp/repo-data'
5
5
  user 'vagrant'
6
+ environment('GIT_DISCOVERY_ACROSS_FILESYSTEM' => '1')
6
7
  end
7
8
  end
@@ -2,6 +2,6 @@
2
2
  # attributes to be applied to nodes that run this cookbook.
3
3
 
4
4
  # Set a default name
5
- default["example"]["name"] = "Sam Doe"
5
+ default['example']['name'] = 'Sam Doe'
6
6
 
7
7
  # For further information, see the Chef documentation (https://docs.chef.io/essentials_cookbook_attribute_files.html).
@@ -1,7 +1,7 @@
1
1
  # This is a Chef recipe file. It can be used to specify resources which will
2
2
  # apply configuration to a server.
3
3
 
4
- log "Welcome to Chef, #{node["example"]["name"]}!" do
4
+ log "Welcome to Chef, #{node['example']['name']}!" do
5
5
  level :info
6
6
  end
7
7
 
@@ -5,4 +5,3 @@ license 'Apache 2 License'
5
5
  description 'Generates Chef code for Chef DK'
6
6
  long_description 'Generates Chef code for Chef DK'
7
7
  version '0.1.0'
8
-
@@ -56,7 +56,7 @@ cookbook_file "#{cookbook_dir}/Berksfile"
56
56
  directory "#{cookbook_dir}/recipes"
57
57
 
58
58
  template "#{cookbook_dir}/recipes/default.rb" do
59
- source "recipe.rb.erb"
59
+ source 'recipe.rb.erb'
60
60
  helpers(ChefDK::Generator::TemplateHelper)
61
61
  end
62
62
 
@@ -70,20 +70,20 @@ cookbook_file "#{cookbook_dir}/spec/spec_helper.rb" do
70
70
  end
71
71
 
72
72
  template "#{cookbook_dir}/spec/unit/recipes/default_spec.rb" do
73
- source "recipe_spec.rb.erb"
73
+ source 'recipe_spec.rb.erb'
74
74
  helpers(ChefDK::Generator::TemplateHelper)
75
75
  action :create_if_missing
76
76
  end
77
77
 
78
78
  # git
79
79
  if context.have_git
80
- if !context.skip_git_init
81
- execute("initialize-git") do
82
- command("git init .")
80
+ unless context.skip_git_init
81
+ execute('initialize-git') do
82
+ command('git init .')
83
83
  cwd app_dir
84
84
  end
85
85
  end
86
86
  cookbook_file "#{app_dir}/.gitignore" do
87
- source "gitignore"
87
+ source 'gitignore'
88
88
  end
89
89
  end
@@ -1,12 +1,12 @@
1
1
 
2
2
  context = ChefDK::Generator.context
3
3
  cookbook_dir = File.join(context.cookbook_root, context.cookbook_name)
4
- attribute_dir = File.join(cookbook_dir, "attributes")
5
- attribute_path = File.join(cookbook_dir, "attributes", "#{context.new_file_basename}.rb")
4
+ attribute_dir = File.join(cookbook_dir, 'attributes')
5
+ attribute_path = File.join(cookbook_dir, 'attributes', "#{context.new_file_basename}.rb")
6
6
 
7
7
  directory attribute_dir
8
8
 
9
9
  template attribute_path do
10
- source "attribute.rb.erb"
10
+ source 'attribute.rb.erb'
11
11
  helpers(ChefDK::Generator::TemplateHelper)
12
12
  end
@@ -2,38 +2,42 @@
2
2
  context = ChefDK::Generator.context
3
3
  delivery_project_dir = context.delivery_project_dir
4
4
  pipeline = context.pipeline
5
- dot_delivery_dir = File.join(delivery_project_dir, ".delivery")
5
+ dot_delivery_dir = File.join(delivery_project_dir, '.delivery')
6
+ config_json = File.join(dot_delivery_dir, 'config.json')
7
+ project_toml = File.join(dot_delivery_dir, 'project.toml')
6
8
 
7
- generator_desc("Ensuring delivery configuration")
9
+ generator_desc('Ensuring delivery configuration')
8
10
 
9
11
  directory dot_delivery_dir
10
12
 
11
- cookbook_file File.join(dot_delivery_dir, "config.json") do
12
- source "delivery-config.json"
13
+ cookbook_file config_json do
14
+ source 'delivery-config.json'
15
+ not_if { File.exist?(config_json) }
13
16
  end
14
17
 
15
18
  # Adding a new prototype file for delivery-cli local commands
16
- cookbook_file File.join(dot_delivery_dir, "project.toml") do
17
- source "delivery-project.toml"
19
+ cookbook_file project_toml do
20
+ source 'delivery-project.toml'
21
+ not_if { File.exist?(project_toml) }
18
22
  end
19
23
 
20
- generator_desc("Ensuring correct delivery build cookbook content")
24
+ generator_desc('Ensuring correct delivery build cookbook content')
21
25
 
22
- build_cookbook_dir = File.join(dot_delivery_dir, "build_cookbook")
26
+ build_cookbook_dir = File.join(dot_delivery_dir, 'build_cookbook')
23
27
 
24
28
  # cookbook root dir
25
29
  directory build_cookbook_dir
26
30
 
27
31
  # metadata.rb
28
32
  template "#{build_cookbook_dir}/metadata.rb" do
29
- source "build_cookbook/metadata.rb.erb"
33
+ source 'build_cookbook/metadata.rb.erb'
30
34
  helpers(ChefDK::Generator::TemplateHelper)
31
35
  action :create_if_missing
32
36
  end
33
37
 
34
38
  # README
35
39
  cookbook_file "#{build_cookbook_dir}/README.md" do
36
- source "build_cookbook/README.md"
40
+ source 'build_cookbook/README.md'
37
41
  action :create_if_missing
38
42
  end
39
43
 
@@ -49,7 +53,7 @@ cookbook_file "#{build_cookbook_dir}/chefignore"
49
53
 
50
54
  # Berksfile
51
55
  template "#{build_cookbook_dir}/Berksfile" do
52
- source "build_cookbook/Berksfile.erb"
56
+ source 'build_cookbook/Berksfile.erb'
53
57
  helpers(ChefDK::Generator::TemplateHelper)
54
58
  action :create_if_missing
55
59
  end
@@ -68,7 +72,7 @@ end
68
72
 
69
73
  # Test Kitchen build node
70
74
  cookbook_file "#{build_cookbook_dir}/.kitchen.yml" do
71
- source "build_cookbook/.kitchen.yml"
75
+ source 'build_cookbook/.kitchen.yml'
72
76
  end
73
77
 
74
78
  directory "#{build_cookbook_dir}/data_bags/keys" do
@@ -93,7 +97,7 @@ version '0.1.0')
93
97
  end
94
98
 
95
99
  cookbook_file "#{build_cookbook_dir}/test/fixtures/cookbooks/test/recipes/default.rb" do
96
- source "build_cookbook/test-fixture-recipe.rb"
100
+ source 'build_cookbook/test-fixture-recipe.rb'
97
101
  end
98
102
 
99
103
  # Construct git history as if we did all the work in a feature branch which we
@@ -111,52 +115,52 @@ end
111
115
  #
112
116
  if context.have_git && context.delivery_project_git_initialized && !context.skip_git_init
113
117
 
114
- generator_desc("Adding delivery configuration to feature branch")
118
+ generator_desc('Adding delivery configuration to feature branch')
115
119
 
116
- execute("git-create-feature-branch") do
117
- command("git checkout -t -b add-delivery-configuration")
120
+ execute('git-create-feature-branch') do
121
+ command('git checkout -t -b add-delivery-configuration')
118
122
  cwd delivery_project_dir
119
-
120
- not_if "git branch |grep \"add-delivery-configuration\""
123
+
124
+ not_if 'git branch |grep "add-delivery-configuration"'
121
125
  end
122
126
 
123
- execute("git-add-delivery-config-json") do
124
- command("git add .delivery/config.json")
127
+ execute('git-add-delivery-config-json') do
128
+ command('git add .delivery/config.json')
125
129
  cwd delivery_project_dir
126
130
 
127
- only_if "git status --porcelain |grep \".\""
131
+ only_if 'git status -u --porcelain |grep ".delivery/config.json"'
128
132
  end
129
133
 
130
134
  # Adding the new prototype file to the feature branch
131
135
  # so it gets checked in with the delivery config commit
132
- execute("git-add-delivery-project-toml") do
133
- command("git add .delivery/project.toml")
136
+ execute('git-add-delivery-project-toml') do
137
+ command('git add .delivery/project.toml')
134
138
  cwd delivery_project_dir
135
139
 
136
- only_if "git status --porcelain |grep \".\""
140
+ only_if 'git status -u --porcelain |grep ".delivery/project.toml"'
137
141
  end
138
142
 
139
- execute("git-commit-delivery-config") do
140
- command("git commit -m \"Add generated delivery configuration\"")
143
+ execute('git-commit-delivery-config') do
144
+ command('git commit -m "Add generated delivery configuration"')
141
145
  cwd delivery_project_dir
142
146
 
143
- only_if "git status --porcelain |grep \".\""
147
+ only_if 'git status -u --porcelain | egrep "config.json|project.toml"'
144
148
  end
145
149
 
146
- generator_desc("Adding build cookbook to feature branch")
150
+ generator_desc('Adding build cookbook to feature branch')
147
151
 
148
- execute("git-add-delivery-build-cookbook-files") do
149
- command("git add .delivery")
152
+ execute('git-add-delivery-build-cookbook-files') do
153
+ command('git add .delivery')
150
154
  cwd delivery_project_dir
151
155
 
152
- only_if "git status --porcelain |grep \".\""
156
+ only_if 'git status -u --porcelain |grep ".delivery"'
153
157
  end
154
158
 
155
- execute("git-commit-delivery-build-cookbook") do
156
- command("git commit -m \"Add generated delivery build cookbook\"")
159
+ execute('git-commit-delivery-build-cookbook') do
160
+ command('git commit -m "Add generated delivery build cookbook"')
157
161
  cwd delivery_project_dir
158
162
 
159
- only_if "git status --porcelain |grep \".\""
163
+ only_if 'git status -u --porcelain |grep ".delivery"'
160
164
  end
161
165
 
162
166
  execute("git-return-to-#{pipeline}-branch") do
@@ -164,15 +168,15 @@ if context.have_git && context.delivery_project_git_initialized && !context.skip
164
168
  cwd delivery_project_dir
165
169
  end
166
170
 
167
- generator_desc("Merging delivery content feature branch to master")
171
+ generator_desc('Merging delivery content feature branch to master')
168
172
 
169
- execute("git-merge-delivery-config-branch") do
170
- command("git merge --no-ff add-delivery-configuration")
173
+ execute('git-merge-delivery-config-branch') do
174
+ command('git merge --no-ff add-delivery-configuration')
171
175
  cwd delivery_project_dir
172
176
  end
173
177
 
174
- execute("git-remove-delivery-config-branch") do
175
- command("git branch -D add-delivery-configuration")
178
+ execute('git-remove-delivery-config-branch') do
179
+ command('git branch -D add-delivery-configuration')
176
180
  cwd delivery_project_dir
177
181
  end
178
182
  end