chef-zero 2.2.1 → 3.0.0.rc.1

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.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -0
  3. data/Rakefile +5 -1
  4. data/bin/chef-zero +17 -0
  5. data/lib/chef_zero/chef_data/acl_path.rb +139 -0
  6. data/lib/chef_zero/chef_data/cookbook_data.rb +240 -0
  7. data/lib/chef_zero/chef_data/data_normalizer.rb +207 -0
  8. data/lib/chef_zero/chef_data/default_creator.rb +446 -0
  9. data/lib/chef_zero/data_store/default_facade.rb +149 -0
  10. data/lib/chef_zero/data_store/interface_v1.rb +18 -0
  11. data/lib/chef_zero/data_store/memory_store.rb +2 -1
  12. data/lib/chef_zero/data_store/memory_store_v2.rb +3 -36
  13. data/lib/chef_zero/data_store/raw_file_store.rb +147 -0
  14. data/lib/chef_zero/data_store/v1_to_v2_adapter.rb +39 -103
  15. data/lib/chef_zero/data_store/v2_to_v1_adapter.rb +1 -1
  16. data/lib/chef_zero/endpoints/acl_endpoint.rb +38 -0
  17. data/lib/chef_zero/endpoints/acls_endpoint.rb +29 -0
  18. data/lib/chef_zero/endpoints/actor_endpoint.rb +36 -10
  19. data/lib/chef_zero/endpoints/actors_endpoint.rb +38 -6
  20. data/lib/chef_zero/endpoints/authenticate_user_endpoint.rb +15 -9
  21. data/lib/chef_zero/endpoints/container_endpoint.rb +22 -0
  22. data/lib/chef_zero/endpoints/containers_endpoint.rb +13 -0
  23. data/lib/chef_zero/endpoints/cookbook_endpoint.rb +1 -1
  24. data/lib/chef_zero/endpoints/cookbook_version_endpoint.rb +15 -14
  25. data/lib/chef_zero/endpoints/cookbooks_base.rb +2 -2
  26. data/lib/chef_zero/endpoints/data_bag_endpoint.rb +4 -4
  27. data/lib/chef_zero/endpoints/data_bag_item_endpoint.rb +5 -5
  28. data/lib/chef_zero/endpoints/data_bags_endpoint.rb +5 -4
  29. data/lib/chef_zero/endpoints/environment_cookbook_endpoint.rb +2 -2
  30. data/lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb +6 -6
  31. data/lib/chef_zero/endpoints/environment_cookbooks_endpoint.rb +2 -2
  32. data/lib/chef_zero/endpoints/environment_endpoint.rb +5 -5
  33. data/lib/chef_zero/endpoints/environment_nodes_endpoint.rb +2 -2
  34. data/lib/chef_zero/endpoints/environment_recipes_endpoint.rb +3 -3
  35. data/lib/chef_zero/endpoints/environment_role_endpoint.rb +2 -2
  36. data/lib/chef_zero/endpoints/file_store_file_endpoint.rb +1 -1
  37. data/lib/chef_zero/endpoints/group_endpoint.rb +20 -0
  38. data/lib/chef_zero/endpoints/groups_endpoint.rb +13 -0
  39. data/lib/chef_zero/endpoints/license_endpoint.rb +25 -0
  40. data/lib/chef_zero/endpoints/node_endpoint.rb +5 -5
  41. data/lib/chef_zero/endpoints/not_found_endpoint.rb +2 -2
  42. data/lib/chef_zero/endpoints/organization_association_request_endpoint.rb +22 -0
  43. data/lib/chef_zero/endpoints/organization_association_requests_endpoint.rb +29 -0
  44. data/lib/chef_zero/endpoints/organization_authenticate_user_endpoint.rb +26 -0
  45. data/lib/chef_zero/endpoints/organization_endpoint.rb +41 -0
  46. data/lib/chef_zero/endpoints/organization_user_endpoint.rb +48 -0
  47. data/lib/chef_zero/endpoints/organization_users_endpoint.rb +14 -0
  48. data/lib/chef_zero/endpoints/organization_validator_key_endpoint.rb +20 -0
  49. data/lib/chef_zero/endpoints/organizations_endpoint.rb +55 -0
  50. data/lib/chef_zero/endpoints/principal_endpoint.rb +15 -3
  51. data/lib/chef_zero/endpoints/rest_list_endpoint.rb +8 -6
  52. data/lib/chef_zero/endpoints/rest_object_endpoint.rb +12 -10
  53. data/lib/chef_zero/endpoints/role_endpoint.rb +5 -5
  54. data/lib/chef_zero/endpoints/role_environments_endpoint.rb +2 -2
  55. data/lib/chef_zero/endpoints/sandbox_endpoint.rb +2 -2
  56. data/lib/chef_zero/endpoints/sandboxes_endpoint.rb +4 -4
  57. data/lib/chef_zero/endpoints/search_endpoint.rb +10 -10
  58. data/lib/chef_zero/endpoints/system_recovery_endpoint.rb +30 -0
  59. data/lib/chef_zero/endpoints/user_association_request_endpoint.rb +40 -0
  60. data/lib/chef_zero/endpoints/user_association_requests_count_endpoint.rb +19 -0
  61. data/lib/chef_zero/endpoints/user_association_requests_endpoint.rb +19 -0
  62. data/lib/chef_zero/endpoints/user_organizations_endpoint.rb +22 -0
  63. data/lib/chef_zero/rest_base.rb +79 -13
  64. data/lib/chef_zero/rest_error_response.rb +1 -1
  65. data/lib/chef_zero/rest_request.rb +4 -0
  66. data/lib/chef_zero/rest_router.rb +1 -0
  67. data/lib/chef_zero/rspec.rb +55 -8
  68. data/lib/chef_zero/server.rb +87 -21
  69. data/lib/chef_zero/version.rb +1 -1
  70. data/spec/run_oc_pedant.rb +53 -0
  71. data/spec/{run.rb → run_pedant.rb} +13 -4
  72. data/spec/server_spec.rb +54 -0
  73. data/spec/support/oc_pedant.rb +134 -0
  74. data/spec/support/pedant.rb +1 -1
  75. metadata +54 -13
  76. data/lib/chef_zero/cookbook_data.rb +0 -236
  77. data/lib/chef_zero/data_normalizer.rb +0 -146
@@ -1,3 +1,3 @@
1
1
  module ChefZero
2
- VERSION = '2.2.1'
2
+ VERSION = '3.0.0.rc.1'
3
3
  end
@@ -0,0 +1,53 @@
1
+ #!/usr/bin/env ruby
2
+ require 'bundler'
3
+ require 'bundler/setup'
4
+
5
+ require 'chef_zero/server'
6
+ require 'rspec/core'
7
+
8
+ tmpdir = nil
9
+
10
+ begin
11
+ if ENV['FILE_STORE']
12
+ require 'tmpdir'
13
+ require 'chef_zero/data_store/raw_file_store'
14
+ tmpdir = Dir.mktmpdir
15
+ data_store = ChefZero::DataStore::RawFileStore.new(tmpdir, true)
16
+ data_store = ChefZero::DataStore::DefaultFacade.new(data_store, false, false)
17
+ server = ChefZero::Server.new(:port => 8889, :single_org => false, :data_store => data_store)
18
+ server.start_background
19
+
20
+ else
21
+ server = ChefZero::Server.new(:port => 8889, :single_org => false)#, :log_level => :debug)
22
+ server.start_background
23
+ end
24
+
25
+ require 'rspec/core'
26
+ require 'pedant'
27
+ require 'pedant/opensource/platform'
28
+ require 'pedant/multitenant'
29
+ require 'pedant/organization'
30
+
31
+ #Pedant::Config.rerun = true
32
+
33
+ Pedant.config.suite = 'api'
34
+ Pedant.config[:config_file] = 'spec/support/oc_pedant.rb'
35
+ Pedant.setup([
36
+ '--skip-knife',
37
+ '--skip-validation',
38
+ '--skip-authentication',
39
+ '--skip-authorization',
40
+ '--skip-omnibus',
41
+ '--skip-usags',
42
+ '--skip-internal_orgs',
43
+ '--skip-rename_org'
44
+ ])
45
+
46
+ result = RSpec::Core::Runner.run(Pedant.config.rspec_args)
47
+
48
+ server.stop if server.running?
49
+ ensure
50
+ FileUtils.remove_entry_secure(tmpdir) if tmpdir
51
+ end
52
+
53
+ exit(result)
@@ -23,8 +23,8 @@ def start_local_server(chef_repo_path)
23
23
  Chef::Config.versioned_cookbooks = true
24
24
  chef_fs = Chef::ChefFS::Config.new.local_fs
25
25
  data_store = Chef::ChefFS::ChefFSDataStore.new(chef_fs)
26
- data_store = ChefZero::DataStore::V1ToV2Adapter.new(data_store, 'chef', :org_defaults => ChefZero::DataStore::V1ToV2Adapter::ORG_DEFAULTS)
27
- server = ChefZero::Server.new(:port => 8889, :data_store => data_store)#, :log_level => :debug)
26
+ server = ChefZero::Server.new(:port => 8889, :data_store => data_store)
27
+ ENV['SINGLE_ORG'] = 'true'
28
28
  server.start_background
29
29
  server
30
30
  end
@@ -46,11 +46,20 @@ begin
46
46
  server = start_local_server(chef_repo_path)
47
47
 
48
48
  elsif ENV['SINGLE_ORG']
49
- server = ChefZero::Server.new(:port => 8889, :single_org => 'singleorg')
49
+ server = ChefZero::Server.new(:port => 8889, :single_org => 'chef')
50
+ server.start_background
51
+
52
+ elsif ENV['FILE_STORE']
53
+ require 'tmpdir'
54
+ require 'chef_zero/data_store/raw_file_store'
55
+ tmpdir = Dir.mktmpdir
56
+ data_store = ChefZero::DataStore::RawFileStore.new(tmpdir, true)
57
+ data_store = ChefZero::DataStore::DefaultFacade.new(data_store, true, false)
58
+ server = ChefZero::Server.new(:port => 8889, :single_org => 'chef', :data_store => data_store)
50
59
  server.start_background
51
60
 
52
61
  else
53
- server = ChefZero::Server.new(:port => 8889, :single_org => false)
62
+ server = ChefZero::Server.new(:port => 8889, :single_org => false, :osc_compat => true)
54
63
  server.data_store.create_dir([ 'organizations' ], 'pedant')
55
64
  server.start_background
56
65
  end
@@ -1,4 +1,5 @@
1
1
  require 'chef_zero/server'
2
+ require 'uri'
2
3
 
3
4
  describe ChefZero::Server do
4
5
  context 'with a server bound to port 8889' do
@@ -24,5 +25,58 @@ describe ChefZero::Server do
24
25
  it 'a server bound to range 8889-8889 throws an exception' do
25
26
  expect { ChefZero::Server.new(:port => 8889.upto(8889)).start_background }.to raise_error Errno::EADDRINUSE
26
27
  end
28
+
29
+ context 'accept headers' do
30
+ def get_nodes(accepts)
31
+ uri = URI(@server.url)
32
+ httpcall = Net::HTTP.new(uri.host, uri.port)
33
+ httpcall.get('/nodes', 'Accept' => accepts)
34
+ end
35
+
36
+ it 'accepts requests with no accept header' do
37
+ request = Net::HTTP::Get.new('/nodes')
38
+ request.delete('Accept')
39
+ uri = URI(@server.url)
40
+ response = Net::HTTP.new(uri.host, uri.port).request(request)
41
+ expect(response.code).to eq '200'
42
+ end
43
+
44
+ it 'accepts requests with accept: application/json' do
45
+ expect(get_nodes('application/json').code).to eq '200'
46
+ end
47
+
48
+ it 'accepts requests with accept: application/*' do
49
+ expect(get_nodes('application/*').code).to eq '200'
50
+ end
51
+
52
+ it 'accepts requests with accept: application/*' do
53
+ expect(get_nodes('*/*').code).to eq '200'
54
+ end
55
+
56
+ it 'denies requests with accept: application/blah' do
57
+ expect(get_nodes('application/blah').code).to eq '406'
58
+ end
59
+
60
+ it 'denies requests with accept: blah/json' do
61
+ expect(get_nodes('blah/json').code).to eq '406'
62
+ end
63
+
64
+ it 'denies requests with accept: blah/*' do
65
+ expect(get_nodes('blah/*').code).to eq '406'
66
+ end
67
+
68
+ it 'denies requests with accept: blah/*' do
69
+ expect(get_nodes('blah/*').code).to eq '406'
70
+ end
71
+
72
+ it 'denies requests with accept: <empty string>' do
73
+ expect(get_nodes('').code).to eq '406'
74
+ end
75
+
76
+ it 'accepts requests with accept: a/b;a=b;c=d, application/json;a=b, application/xml;a=b' do
77
+ expect(get_nodes('a/b;a=b;c=d, application/json;a=b, application/xml;a=b').code).to eq '200'
78
+ end
79
+
80
+ end
27
81
  end
28
82
  end
@@ -0,0 +1,134 @@
1
+ # Copyright: Copyright (c) 2012 Opscode, Inc.
2
+ # License: Apache License, Version 2.0
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ # This annotated Pedant configuration file details the various
17
+ # configuration settings available to you. It is separate from the
18
+ # actual Pedant::Config class because not all settings have sane
19
+ # defaults, and not all settings are appropriate in all settings.
20
+
21
+ ################################################################################
22
+ # You MUST specify the address of the server the API requests will be
23
+ # sent to. Only specify protocol, hostname, and port.
24
+ chef_server 'http://127.0.0.1:8889'
25
+
26
+ # If you are doing development testing, you can specify the address of
27
+ # the Solr server. The presence of this parameter will enable tests
28
+ # to force commits to Solr, greatly decreasing the amout of time
29
+ # needed for testing the search endpoint. This is only an
30
+ # optimization for development! If you are testing a "live" Chef
31
+ # Server, or otherwise do not have access to the Solr server from your
32
+ # testing location, you should not specify a value for this parameter.
33
+ # The tests will still run, albeit slower, as they will now need to
34
+ # poll for a period to ensure they are querying committed results.
35
+ #search_server "http://localhost:8983"
36
+
37
+ # Related to the 'search_server' parameter, this specifies the maximum
38
+ # amout of time (in seconds) that search endpoint requests should be
39
+ # retried before giving up. If not explicitly set, it will default to
40
+ # 65 seconds; only set it if you know that your Solr commit interval
41
+ # differs significantly from this.
42
+ maximum_search_time 0
43
+
44
+ # OSC sends erchef a host header with a port, so this option needs
45
+ # # to be enabled for Pedant tests to work correctly
46
+ explicit_port_url true
47
+
48
+ # We're starting to break tests up into groups based on different
49
+ # criteria. The proper API tests (the results of which are viewable
50
+ # to OPC customers) should be the only ones run by Pedant embedded in
51
+ # OPC installs. There are other specs that help us keep track of API
52
+ # cruft that we want to come back and fix later; these shouldn't be
53
+ # viewable to customers, but we should be able to run them in
54
+ # development and CI environments. If this parameter is missing or
55
+ # explicitly `false` only the customer-friendly tests will be run.
56
+ #
57
+ # This is mainly here for documentation purposes, since the
58
+ # command-line `opscode-pedant` utility ultimately determines this
59
+ # value.
60
+ include_internal false
61
+
62
+ # This is the bit that is different from pedant.rb
63
+ org({:name => "pedant-testorg",
64
+ :create_me => true})
65
+ internal_account_url chef_server
66
+ delete_org true
67
+
68
+ # Test users. The five users specified below are required; their
69
+ # names (:user, :non_org_user, etc.) are indicative of their role
70
+ # within the tests. All users must have a ':name' key. If they have
71
+ # a ':create_me' key, Pedant will create these users for you. If you
72
+ # are using pre-existing users, you must supply a ':key_file' key,
73
+ # which should be the fully-qualified path /on the machine Pedant is
74
+ # running on/ to a private key for that user.
75
+ key = 'spec/support/stickywicket.pem'
76
+ superuser_name 'pivotal'
77
+ superuser_key key
78
+ webui_key key
79
+
80
+ # Set the platform_class
81
+ platform_class Pedant::MultiTenantPlatform
82
+
83
+ requestors({
84
+ :clients => {
85
+ # The the admin user, for the purposes of getting things rolling
86
+ :admin => {
87
+ :name => "pedant_admin_client",
88
+ :create_me => true,
89
+ :create_knife => true,
90
+ :admin => true
91
+ },
92
+ :non_admin => {
93
+ :name => 'pedant_client',
94
+ :create_me => true,
95
+ :create_knife => true,
96
+ },
97
+ :bad => {
98
+ :name => 'bad_client',
99
+ :create_me => true,
100
+ :create_knife => true,
101
+ :bogus => true
102
+ }
103
+ },
104
+
105
+ :users => {
106
+ # An administrator in the testing organization
107
+ :admin => {
108
+ :name => "pedant_admin_user",
109
+ :create_me => true,
110
+ :create_knife => true
111
+ },
112
+
113
+ :non_admin => {
114
+ :name => "pedant_user",
115
+ :create_me => true,
116
+ :create_knife => true
117
+ },
118
+
119
+ # A user that is not a member of the testing organization
120
+ :bad => {
121
+ :name => "pedant-nobody",
122
+ :create_me => true,
123
+ :create_knife => true,
124
+ :associate => false
125
+ },
126
+ }
127
+ })
128
+
129
+ self[:tags] = [:validation, :authentication, :authorization]
130
+ verify_error_messages false
131
+
132
+ ruby_users_endpoint? false
133
+ ruby_acls_endpoint? false
134
+ ruby_org_assoc? false
@@ -21,7 +21,7 @@
21
21
  ################################################################################
22
22
  # You MUST specify the address of the server the API requests will be
23
23
  # sent to. Only specify protocol, hostname, and port.
24
- if ENV['SINGLE_ORG']
24
+ if ENV['SINGLE_ORG'] || ENV['FILE_STORE']
25
25
  chef_server 'http://127.0.0.1:8889'
26
26
  else
27
27
  chef_server 'http://127.0.0.1:8889/organizations/pedant'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-zero
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
4
+ version: 3.0.0.rc.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Keiser
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-23 00:00:00.000000000 Z
11
+ date: 2014-08-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mixlib-log
@@ -39,19 +39,33 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: ffi-yajl
42
+ name: uuidtools
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.1'
47
+ version: '2.1'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.1'
54
+ version: '2.1'
55
+ - !ruby/object:Gem::Dependency
56
+ name: json
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: rack
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -105,20 +119,30 @@ files:
105
119
  - LICENSE
106
120
  - README.md
107
121
  - Rakefile
108
- - lib/chef_zero/cookbook_data.rb
109
- - lib/chef_zero/data_normalizer.rb
122
+ - bin/chef-zero
123
+ - lib/chef_zero.rb
124
+ - lib/chef_zero/chef_data/acl_path.rb
125
+ - lib/chef_zero/chef_data/cookbook_data.rb
126
+ - lib/chef_zero/chef_data/data_normalizer.rb
127
+ - lib/chef_zero/chef_data/default_creator.rb
110
128
  - lib/chef_zero/data_store/data_already_exists_error.rb
111
129
  - lib/chef_zero/data_store/data_error.rb
112
130
  - lib/chef_zero/data_store/data_not_found_error.rb
131
+ - lib/chef_zero/data_store/default_facade.rb
113
132
  - lib/chef_zero/data_store/interface_v1.rb
114
133
  - lib/chef_zero/data_store/interface_v2.rb
115
134
  - lib/chef_zero/data_store/memory_store.rb
116
135
  - lib/chef_zero/data_store/memory_store_v2.rb
136
+ - lib/chef_zero/data_store/raw_file_store.rb
117
137
  - lib/chef_zero/data_store/v1_to_v2_adapter.rb
118
138
  - lib/chef_zero/data_store/v2_to_v1_adapter.rb
139
+ - lib/chef_zero/endpoints/acl_endpoint.rb
140
+ - lib/chef_zero/endpoints/acls_endpoint.rb
119
141
  - lib/chef_zero/endpoints/actor_endpoint.rb
120
142
  - lib/chef_zero/endpoints/actors_endpoint.rb
121
143
  - lib/chef_zero/endpoints/authenticate_user_endpoint.rb
144
+ - lib/chef_zero/endpoints/container_endpoint.rb
145
+ - lib/chef_zero/endpoints/containers_endpoint.rb
122
146
  - lib/chef_zero/endpoints/cookbook_endpoint.rb
123
147
  - lib/chef_zero/endpoints/cookbook_version_endpoint.rb
124
148
  - lib/chef_zero/endpoints/cookbooks_base.rb
@@ -134,8 +158,19 @@ files:
134
158
  - lib/chef_zero/endpoints/environment_recipes_endpoint.rb
135
159
  - lib/chef_zero/endpoints/environment_role_endpoint.rb
136
160
  - lib/chef_zero/endpoints/file_store_file_endpoint.rb
161
+ - lib/chef_zero/endpoints/group_endpoint.rb
162
+ - lib/chef_zero/endpoints/groups_endpoint.rb
163
+ - lib/chef_zero/endpoints/license_endpoint.rb
137
164
  - lib/chef_zero/endpoints/node_endpoint.rb
138
165
  - lib/chef_zero/endpoints/not_found_endpoint.rb
166
+ - lib/chef_zero/endpoints/organization_association_request_endpoint.rb
167
+ - lib/chef_zero/endpoints/organization_association_requests_endpoint.rb
168
+ - lib/chef_zero/endpoints/organization_authenticate_user_endpoint.rb
169
+ - lib/chef_zero/endpoints/organization_endpoint.rb
170
+ - lib/chef_zero/endpoints/organization_user_endpoint.rb
171
+ - lib/chef_zero/endpoints/organization_users_endpoint.rb
172
+ - lib/chef_zero/endpoints/organization_validator_key_endpoint.rb
173
+ - lib/chef_zero/endpoints/organizations_endpoint.rb
139
174
  - lib/chef_zero/endpoints/principal_endpoint.rb
140
175
  - lib/chef_zero/endpoints/rest_list_endpoint.rb
141
176
  - lib/chef_zero/endpoints/rest_object_endpoint.rb
@@ -145,6 +180,11 @@ files:
145
180
  - lib/chef_zero/endpoints/sandboxes_endpoint.rb
146
181
  - lib/chef_zero/endpoints/search_endpoint.rb
147
182
  - lib/chef_zero/endpoints/searches_endpoint.rb
183
+ - lib/chef_zero/endpoints/system_recovery_endpoint.rb
184
+ - lib/chef_zero/endpoints/user_association_request_endpoint.rb
185
+ - lib/chef_zero/endpoints/user_association_requests_count_endpoint.rb
186
+ - lib/chef_zero/endpoints/user_association_requests_endpoint.rb
187
+ - lib/chef_zero/endpoints/user_organizations_endpoint.rb
148
188
  - lib/chef_zero/log.rb
149
189
  - lib/chef_zero/rest_base.rb
150
190
  - lib/chef_zero/rest_error_response.rb
@@ -162,13 +202,13 @@ files:
162
202
  - lib/chef_zero/solr/solr_doc.rb
163
203
  - lib/chef_zero/solr/solr_parser.rb
164
204
  - lib/chef_zero/version.rb
165
- - lib/chef_zero.rb
166
- - spec/run.rb
205
+ - spec/run_oc_pedant.rb
206
+ - spec/run_pedant.rb
167
207
  - spec/search_spec.rb
168
208
  - spec/server_spec.rb
209
+ - spec/support/oc_pedant.rb
169
210
  - spec/support/pedant.rb
170
211
  - spec/support/stickywicket.pem
171
- - bin/chef-zero
172
212
  homepage: http://www.opscode.com
173
213
  licenses:
174
214
  - Apache 2.0
@@ -184,14 +224,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
184
224
  version: '0'
185
225
  required_rubygems_version: !ruby/object:Gem::Requirement
186
226
  requirements:
187
- - - ">="
227
+ - - ">"
188
228
  - !ruby/object:Gem::Version
189
- version: '0'
229
+ version: 1.3.1
190
230
  requirements: []
191
231
  rubyforge_project:
192
- rubygems_version: 2.1.11
232
+ rubygems_version: 2.2.2
193
233
  signing_key:
194
234
  specification_version: 4
195
235
  summary: Self-contained, easy-setup, fast-start in-memory Chef server for testing
196
236
  and solo setup purposes
197
237
  test_files: []
238
+ has_rdoc: