diff options
author | Lamont Granquist <lamont@scriptkiddie.org> | 2014-08-27 19:07:06 -0700 |
---|---|---|
committer | Lamont Granquist <lamont@scriptkiddie.org> | 2014-08-27 19:07:06 -0700 |
commit | 24341aefdbaffee9a4b2da9bca3168b1e6f7fc04 (patch) | |
tree | b715a72bebb9b30c9266877501918c5a1d8de3fc | |
parent | 395534b88d54e6ec57eadfaab81c736c688e7938 (diff) | |
download | chef-lcg/add-test-segment.tar.gz |
hacking in a test segmentlcg/add-test-segment
-rw-r--r-- | lib/chef/cookbook/cookbook_version_loader.rb | 4 | ||||
-rw-r--r-- | lib/chef/cookbook_uploader.rb | 3 | ||||
-rw-r--r-- | lib/chef/cookbook_version.rb | 8 |
3 files changed, 14 insertions, 1 deletions
diff --git a/lib/chef/cookbook/cookbook_version_loader.rb b/lib/chef/cookbook/cookbook_version_loader.rb index 47258c4d4e..cd0ee9c02d 100644 --- a/lib/chef/cookbook/cookbook_version_loader.rb +++ b/lib/chef/cookbook/cookbook_version_loader.rb @@ -11,6 +11,7 @@ class Chef :definition_filenames, :recipe_filenames, :template_filenames, + :test_filenames, # FIXME: LOOP OVER SEGMENTS :file_filenames, :library_filenames, :resource_filenames, @@ -44,6 +45,7 @@ class Chef @cookbook_settings = { :attribute_filenames => {}, :definition_filenames => {}, + :test_filenames => {}, # FIXME: LOOP OVER SEGMENTS :recipe_filenames => {}, :template_filenames => {}, :file_filenames => {}, @@ -81,6 +83,7 @@ class Chef load_as(:definition_filenames, 'definitions', '*.rb') load_as(:recipe_filenames, 'recipes', '*.rb') load_as(:library_filenames, 'libraries', '*.rb') + load_recursively_as(:test_filenames, "test", "*") # FIXME: LOOP OVER SEGMENTS load_recursively_as(:template_filenames, "templates", "*") load_recursively_as(:file_filenames, "files", "*") load_recursively_as(:resource_filenames, "resources", "*.rb") @@ -122,6 +125,7 @@ class Chef Chef::CookbookVersion.new(cookbook_name, *cookbook_paths).tap do |c| c.attribute_filenames = cookbook_settings[:attribute_filenames].values c.definition_filenames = cookbook_settings[:definition_filenames].values + c.test_filenames = cookbook_settings[:test_filenames].values # FIXME: LOOP OVER SEGMENTS c.recipe_filenames = cookbook_settings[:recipe_filenames].values c.template_filenames = cookbook_settings[:template_filenames].values c.file_filenames = cookbook_settings[:file_filenames].values diff --git a/lib/chef/cookbook_uploader.rb b/lib/chef/cookbook_uploader.rb index 2d8bf5bc7e..cce93d5128 100644 --- a/lib/chef/cookbook_uploader.rb +++ b/lib/chef/cookbook_uploader.rb @@ -94,6 +94,9 @@ class Chef cookbooks.each do |cb| save_url = opts[:force] ? cb.force_save_url : cb.save_url begin + require 'pp' + pp cb + puts Chef::JSONCompat.to_json_pretty(cb) rest.put(save_url, cb) rescue Net::HTTPServerException => e case e.response.code diff --git a/lib/chef/cookbook_version.rb b/lib/chef/cookbook_version.rb index 76e6d152b2..3125da996c 100644 --- a/lib/chef/cookbook_version.rb +++ b/lib/chef/cookbook_version.rb @@ -40,9 +40,10 @@ class Chef class CookbookVersion include Comparable - COOKBOOK_SEGMENTS = [ :resources, :providers, :recipes, :definitions, :libraries, :attributes, :files, :templates, :root_files ] + COOKBOOK_SEGMENTS = [ :test, :resources, :providers, :recipes, :definitions, :libraries, :attributes, :files, :templates, :root_files ] attr_accessor :root_paths + attr_accessor :test_filenames # FIXME: TURN INTO A HASH BY SEGMENT attr_accessor :definition_filenames attr_accessor :template_filenames attr_accessor :file_filenames @@ -98,6 +99,7 @@ class Chef @frozen = false @attribute_filenames = Array.new @definition_filenames = Array.new + @test_filenames = Array.new # FIXME: loop over segments @template_filenames = Array.new @file_filenames = Array.new @recipe_filenames = Array.new @@ -268,6 +270,8 @@ class Chef @file_filenames when :templates @template_filenames + when :test # FIXME: LOOP OVER SEGMENTS + @test_filenames when :root_files @root_filenames end @@ -611,6 +615,8 @@ class Chef # See #preferred_manifest_record for a description an individual manifest record. def generate_manifest manifest = Mash.new({ + # FIXME: loop over COOKBOOK_SEGMENTS + :test => Array.new, :recipes => Array.new, :definitions => Array.new, :libraries => Array.new, |