diff options
author | John Keiser <jkeiser@opscode.com> | 2013-07-10 07:34:49 -0700 |
---|---|---|
committer | John Keiser <jkeiser@opscode.com> | 2013-07-10 07:34:49 -0700 |
commit | 8d76496431fc219398f7c3c32fc602b440991b47 (patch) | |
tree | 4eeb5dd044efa344baf6e2cb0da92f65f10056ef | |
parent | 32d0a62c17889b79ff5c6b248812faee3e58a495 (diff) | |
download | chef-zero-8d76496431fc219398f7c3c32fc602b440991b47.tar.gz |
Support run_list with cookbook::recipe@name syntax
-rw-r--r-- | lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb b/lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb index e7c83a1..efd21a4 100644 --- a/lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb +++ b/lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb @@ -13,10 +13,10 @@ module ChefZero desired_versions = {} run_list = JSON.parse(request.body, :create_additions => false)['run_list'] run_list.each do |run_list_entry| - if run_list_entry =~ /(.+)(::.+)?\@(.+)/ + if run_list_entry =~ /(.+)::.+\@(.+)/ || run_list_entry =~ /(.+)\@(.+)/ raise RestErrorResponse.new(412, "No such cookbook: #{$1}") if !cookbook_names.include?($1) - raise RestErrorResponse.new(412, "No such cookbook version for cookbook #{$1}: #{$3}") if !list_data(request, ['cookbooks', $1]).include?($3) - desired_versions[$1] = [ $3 ] + raise RestErrorResponse.new(412, "No such cookbook version for cookbook #{$1}: #{$2}") if !list_data(request, ['cookbooks', $1]).include?($2) + desired_versions[$1] = [ $2 ] else desired_cookbook = run_list_entry.split('::')[0] raise RestErrorResponse.new(412, "No such cookbook: #{desired_cookbook}") if !cookbook_names.include?(desired_cookbook) |