berkshelf 2.0.0.beta → 2.0.0
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.
- data/CHANGELOG.md +19 -1
- data/CONTRIBUTING.md +1 -3
- data/Gemfile +0 -20
- data/Guardfile +3 -3
- data/LICENSE +6 -5
- data/README.md +1 -0
- data/Thorfile +48 -67
- data/berkshelf.gemspec +48 -37
- data/features/apply_command.feature +17 -11
- data/features/config.feature +11 -11
- data/features/configure_command.feature +8 -8
- data/features/contingent_command.feature +37 -8
- data/features/cookbook_command.feature +17 -14
- data/features/groups_install.feature +24 -20
- data/features/install_command.feature +24 -33
- data/features/licenses.feature +112 -0
- data/features/list_command.feature +17 -5
- data/features/lockfile.feature +307 -188
- data/features/outdated_command.feature +1 -4
- data/features/package_command.feature +41 -19
- data/features/shelf/list.feature +39 -0
- data/features/shelf/show.feature +152 -0
- data/features/shelf/uninstall.feature +103 -0
- data/features/show_command.feature +49 -17
- data/features/step_definitions/filesystem_steps.rb +12 -3
- data/features/step_definitions/utility_steps.rb +0 -1
- data/features/support/env.rb +11 -4
- data/features/update_command.feature +22 -10
- data/features/upload_command.feature +174 -127
- data/features/vendor_install.feature +6 -6
- data/generator_files/Berksfile.erb +1 -1
- data/generator_files/metadata.rb.erb +7 -7
- data/lib/berkshelf.rb +39 -27
- data/lib/berkshelf/base_generator.rb +2 -3
- data/lib/berkshelf/berksfile.rb +69 -17
- data/lib/berkshelf/cached_cookbook.rb +17 -1
- data/lib/berkshelf/chef.rb +2 -4
- data/lib/berkshelf/chef/config.rb +51 -75
- data/lib/berkshelf/chef/cookbook.rb +1 -2
- data/lib/berkshelf/chef/cookbook/chefignore.rb +1 -1
- data/lib/berkshelf/cli.rb +144 -194
- data/lib/berkshelf/command.rb +11 -12
- data/lib/berkshelf/commands/shelf.rb +130 -0
- data/lib/berkshelf/commands/test_command.rb +11 -0
- data/lib/berkshelf/community_rest.rb +1 -2
- data/lib/berkshelf/config.rb +14 -10
- data/lib/berkshelf/cookbook_generator.rb +30 -24
- data/lib/berkshelf/cookbook_source.rb +1 -1
- data/lib/berkshelf/cookbook_store.rb +0 -1
- data/lib/berkshelf/core_ext.rb +1 -1
- data/lib/berkshelf/core_ext/file.rb +1 -1
- data/lib/berkshelf/downloader.rb +3 -1
- data/lib/berkshelf/errors.rb +128 -53
- data/lib/berkshelf/formatters.rb +2 -6
- data/lib/berkshelf/formatters/human_readable.rb +8 -2
- data/lib/berkshelf/formatters/json.rb +7 -1
- data/lib/berkshelf/formatters/null.rb +0 -1
- data/lib/berkshelf/git.rb +16 -16
- data/lib/berkshelf/init_generator.rb +28 -26
- data/lib/berkshelf/location.rb +12 -11
- data/lib/berkshelf/locations/chef_api_location.rb +2 -2
- data/lib/berkshelf/locations/git_location.rb +0 -1
- data/lib/berkshelf/locations/github_location.rb +0 -1
- data/lib/berkshelf/locations/path_location.rb +1 -2
- data/lib/berkshelf/locations/site_location.rb +3 -2
- data/lib/berkshelf/lockfile.rb +29 -10
- data/lib/berkshelf/mixin/config.rb +155 -0
- data/lib/berkshelf/mixin/logging.rb +0 -1
- data/lib/berkshelf/mixin/shellout.rb +71 -0
- data/lib/berkshelf/resolver.rb +7 -4
- data/lib/berkshelf/test.rb +1 -3
- data/lib/berkshelf/ui.rb +8 -4
- data/lib/berkshelf/version.rb +1 -1
- data/lib/thor/monkies/shell.rb +0 -1
- data/spec/config/berkshelf.pem +27 -0
- data/spec/config/knife.rb +12 -0
- data/spec/config/validator.pem +27 -0
- data/spec/spec_helper.rb +4 -8
- data/spec/support/chef_api.rb +14 -9
- data/spec/support/chef_server.rb +3 -4
- data/spec/unit/berkshelf/berksfile_spec.rb +1 -1
- data/spec/unit/berkshelf/cookbook_generator_spec.rb +12 -6
- data/spec/unit/berkshelf/cookbook_source_spec.rb +13 -1
- data/spec/unit/berkshelf/init_generator_spec.rb +5 -0
- data/spec/unit/chef/config_spec.rb +9 -10
- metadata +216 -93
- data/features/info_command.feature +0 -39
- data/features/open_command.feature +0 -36
- data/lib/berkshelf/cli_commands/test_command.rb +0 -11
- data/lib/berkshelf/mixin.rb +0 -10
- data/lib/berkshelf/mixin/path_helpers.rb +0 -30
- data/spec/support/knife.rb +0 -18
data/spec/support/chef_api.rb
CHANGED
@@ -24,7 +24,8 @@ module Berkshelf
|
|
24
24
|
else
|
25
25
|
ridley.cookbook.delete(name, version)
|
26
26
|
end
|
27
|
-
rescue Ridley::Errors::HTTPNotFound
|
27
|
+
rescue Ridley::Errors::HTTPNotFound,
|
28
|
+
Ridley::Errors::ResourceNotFound
|
28
29
|
true
|
29
30
|
end
|
30
31
|
|
@@ -36,7 +37,8 @@ module Berkshelf
|
|
36
37
|
else
|
37
38
|
!versions.find { |ver| ver == version }.nil?
|
38
39
|
end
|
39
|
-
rescue Ridley::Errors::HTTPNotFound
|
40
|
+
rescue Ridley::Errors::HTTPNotFound,
|
41
|
+
Ridley::Errors::ResourceNotFound
|
40
42
|
false
|
41
43
|
end
|
42
44
|
|
@@ -67,10 +69,13 @@ module Berkshelf
|
|
67
69
|
FileUtils.touch(cookbook_path.join(file))
|
68
70
|
end
|
69
71
|
|
70
|
-
metadata =
|
71
|
-
|
72
|
-
|
73
|
-
|
72
|
+
metadata = [].tap do |a|
|
73
|
+
a << "name '#{name}'"
|
74
|
+
a << "version '#{version}'"
|
75
|
+
a << "license '#{options[:license]}'" if options[:license]
|
76
|
+
a << "" # ensure newline
|
77
|
+
end.join("\n")
|
78
|
+
|
74
79
|
|
75
80
|
if options[:dependencies]
|
76
81
|
options[:dependencies].each do |name, constraint|
|
@@ -111,9 +116,9 @@ EOF
|
|
111
116
|
|
112
117
|
def ridley
|
113
118
|
@ridley ||= Ridley.new(
|
114
|
-
server_url:
|
115
|
-
client_name:
|
116
|
-
client_key:
|
119
|
+
server_url: Berkshelf.chef_config[:chef_server_url],
|
120
|
+
client_name: Berkshelf.chef_config[:node_name],
|
121
|
+
client_key: Berkshelf.chef_config[:client_key],
|
117
122
|
ssl: { verify: false }
|
118
123
|
)
|
119
124
|
end
|
data/spec/support/chef_server.rb
CHANGED
@@ -14,15 +14,14 @@ module Berkshelf::RSpec
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def server
|
17
|
-
@server ||= ChefZero::Server.new(port: PORT,
|
17
|
+
@server ||= ChefZero::Server.new(port: PORT, generate_real_keys: false)
|
18
18
|
end
|
19
19
|
|
20
20
|
def server_url
|
21
|
-
"http://localhost:#{PORT}"
|
21
|
+
(@server && @server.url) || "http://localhost:#{PORT}"
|
22
22
|
end
|
23
23
|
|
24
24
|
def start
|
25
|
-
Thin::Logging.silent = true
|
26
25
|
server.start_background
|
27
26
|
server.on_response do |request, response|
|
28
27
|
request_log << [ request, response ]
|
@@ -33,7 +32,7 @@ module Berkshelf::RSpec
|
|
33
32
|
end
|
34
33
|
|
35
34
|
def stop
|
36
|
-
@server.stop if
|
35
|
+
@server.stop if running?
|
37
36
|
end
|
38
37
|
|
39
38
|
def running?
|
@@ -542,7 +542,7 @@ describe Berkshelf::Berksfile do
|
|
542
542
|
it 'applys the locked_versions of the Lockfile sources to the given Chef environment' do
|
543
543
|
subject.apply('berkshelf')
|
544
544
|
|
545
|
-
environment = ::JSON.parse(chef_server.
|
545
|
+
environment = ::JSON.parse(chef_server.data_store.get(['environments', 'berkshelf']))
|
546
546
|
expect(environment['cookbook_versions']).to have(2).items
|
547
547
|
expect(environment['cookbook_versions']['nginx']).to eq('1.2.3')
|
548
548
|
expect(environment['cookbook_versions']['artifact']).to eq('1.4.0')
|
@@ -3,6 +3,11 @@ require 'spec_helper'
|
|
3
3
|
describe Berkshelf::CookbookGenerator do
|
4
4
|
let(:name) { 'sparkle_motion' }
|
5
5
|
let(:target) { tmp_path.join(name) }
|
6
|
+
let(:kitchen_generator) { double('kitchen-generator', invoke_all: nil) }
|
7
|
+
|
8
|
+
before do
|
9
|
+
Kitchen::Generator::Init.stub(:new).with(any_args()).and_return(kitchen_generator)
|
10
|
+
end
|
6
11
|
|
7
12
|
context 'with default options' do
|
8
13
|
before do
|
@@ -39,11 +44,11 @@ describe Berkshelf::CookbookGenerator do
|
|
39
44
|
contains 'Author:: YOUR_NAME (<YOUR_EMAIL>)'
|
40
45
|
end
|
41
46
|
file 'metadata.rb' do
|
42
|
-
contains
|
43
|
-
contains
|
44
|
-
contains
|
45
|
-
contains
|
46
|
-
contains
|
47
|
+
contains "name 'sparkle_motion'"
|
48
|
+
contains "maintainer 'YOUR_NAME'"
|
49
|
+
contains "maintainer_email 'YOUR_EMAIL'"
|
50
|
+
contains "license 'All rights reserved'"
|
51
|
+
contains "description 'Installs/Configures sparkle_motion'"
|
47
52
|
end
|
48
53
|
file 'Berksfile' do
|
49
54
|
contains 'site :opscode'
|
@@ -57,6 +62,7 @@ describe Berkshelf::CookbookGenerator do
|
|
57
62
|
|
58
63
|
context "given a 'maintainer_email' option" do
|
59
64
|
before do
|
65
|
+
Kitchen::Generator::Init.stub(:new).with(any_args()).and_return(kitchen_generator)
|
60
66
|
capture(:stdout) {
|
61
67
|
Berkshelf::CookbookGenerator.new([target, name], maintainer_email: 'jamie@vialstudios.com').invoke_all
|
62
68
|
}
|
@@ -66,7 +72,7 @@ describe Berkshelf::CookbookGenerator do
|
|
66
72
|
email = email
|
67
73
|
expect(target).to have_structure {
|
68
74
|
file 'metadata.rb' do
|
69
|
-
contains
|
75
|
+
contains "maintainer_email 'jamie@vialstudios.com'"
|
70
76
|
end
|
71
77
|
}
|
72
78
|
end
|
@@ -293,7 +293,7 @@ describe Berkshelf::CookbookSource do
|
|
293
293
|
end
|
294
294
|
|
295
295
|
it 'includes the git url and ref' do
|
296
|
-
location = double('git', uri: 'git://github.com/foo/bar.git', ref: 'abcd1234')
|
296
|
+
location = double('git', uri: 'git://github.com/foo/bar.git', ref: 'abcd1234', rel: nil)
|
297
297
|
location.stub(:kind_of?).with(Berkshelf::SiteLocation).and_return(false)
|
298
298
|
location.stub(:kind_of?).with(Berkshelf::GitLocation).and_return(true)
|
299
299
|
subject.stub(:location).and_return(location)
|
@@ -304,6 +304,18 @@ describe Berkshelf::CookbookSource do
|
|
304
304
|
expect(hash[:ref]).to eq('abcd1234')
|
305
305
|
end
|
306
306
|
|
307
|
+
it 'includes the git url and rel' do
|
308
|
+
location = double('git', uri: 'git://github.com/foo/bar.git', ref: nil, rel: 'cookbooks/foo')
|
309
|
+
location.stub(:kind_of?).with(Berkshelf::SiteLocation).and_return(false)
|
310
|
+
location.stub(:kind_of?).with(Berkshelf::GitLocation).and_return(true)
|
311
|
+
subject.stub(:location).and_return(location)
|
312
|
+
|
313
|
+
expect(hash).to have_key(:git)
|
314
|
+
expect(hash[:git]).to eq('git://github.com/foo/bar.git')
|
315
|
+
expect(hash).to have_key(:rel)
|
316
|
+
expect(hash[:rel]).to eq('cookbooks/foo')
|
317
|
+
end
|
318
|
+
|
307
319
|
it 'includes a relative path' do
|
308
320
|
subject.instance_variable_set(:@options, { path: '~/Development/foo' })
|
309
321
|
|
@@ -3,6 +3,11 @@ require 'spec_helper'
|
|
3
3
|
describe Berkshelf::InitGenerator, vcr: { record: :new_episodes, serialize_with: :json } do
|
4
4
|
let(:target) { tmp_path.join("some_cookbook") }
|
5
5
|
let(:resolver) { double('resolver') }
|
6
|
+
let(:kitchen_generator) { double('kitchen-generator', invoke_all: nil) }
|
7
|
+
|
8
|
+
before do
|
9
|
+
Kitchen::Generator::Init.stub(:new).with(any_args()).and_return(kitchen_generator)
|
10
|
+
end
|
6
11
|
|
7
12
|
context 'with default options' do
|
8
13
|
before do
|
@@ -1,32 +1,31 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Berkshelf::Chef::Config do
|
4
|
-
describe '.
|
4
|
+
describe '.location' do
|
5
5
|
let(:path) { '/fake/path/for/.chef' }
|
6
6
|
let(:config) { File.join(path, 'knife.rb') }
|
7
|
+
let(:location) { Berkshelf::Chef::Config.send(:location) }
|
7
8
|
|
8
9
|
before do
|
9
10
|
ENV.stub(:[]).and_return(nil)
|
10
11
|
|
11
12
|
File.stub(:exists?).with(any_args()).and_return(false)
|
12
13
|
File.stub(:exists?).with(config).and_return(true)
|
13
|
-
|
14
|
-
Berkshelf::Chef::Config.instance_variable_set(:@path, nil)
|
15
14
|
end
|
16
15
|
|
17
16
|
it 'uses $BERKSHELF_CHEF_CONFIG' do
|
18
17
|
ENV.stub(:[]).with('BERKSHELF_CHEF_CONFIG').and_return(config)
|
19
|
-
expect(
|
18
|
+
expect(location).to eq(config)
|
20
19
|
end
|
21
20
|
|
22
21
|
it 'uses $KNIFE_HOME' do
|
23
22
|
ENV.stub(:[]).with('KNIFE_HOME').and_return(path)
|
24
|
-
expect(
|
23
|
+
expect(location).to eq(config)
|
25
24
|
end
|
26
25
|
|
27
26
|
it 'uses ::working_dir' do
|
28
27
|
Berkshelf::Chef::Config.stub(:working_dir).and_return(path)
|
29
|
-
expect(
|
28
|
+
expect(location).to eq(config)
|
30
29
|
end
|
31
30
|
|
32
31
|
context 'an ascending search' do
|
@@ -41,7 +40,7 @@ describe Berkshelf::Chef::Config do
|
|
41
40
|
end
|
42
41
|
|
43
42
|
it 'chooses the closest path' do
|
44
|
-
expect(
|
43
|
+
expect(location).to eq('/fake/.chef/path/with/multiple/.chef/knife.rb')
|
45
44
|
end
|
46
45
|
end
|
47
46
|
|
@@ -55,7 +54,7 @@ describe Berkshelf::Chef::Config do
|
|
55
54
|
end
|
56
55
|
|
57
56
|
it 'uses the current directory' do
|
58
|
-
expect(
|
57
|
+
expect(location).to eq('/fake/.chef/knife.rb')
|
59
58
|
end
|
60
59
|
end
|
61
60
|
|
@@ -69,14 +68,14 @@ describe Berkshelf::Chef::Config do
|
|
69
68
|
end
|
70
69
|
|
71
70
|
it 'uses the top-level directory' do
|
72
|
-
expect(
|
71
|
+
expect(location).to eq('/.chef/knife.rb')
|
73
72
|
end
|
74
73
|
end
|
75
74
|
end
|
76
75
|
|
77
76
|
it 'uses $HOME' do
|
78
77
|
ENV.stub(:[]).with('HOME').and_return(File.join(path, '..'))
|
79
|
-
expect(
|
78
|
+
expect(location).to eq(config)
|
80
79
|
end
|
81
80
|
end
|
82
81
|
end
|
metadata
CHANGED
@@ -1,27 +1,28 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: berkshelf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0
|
5
|
-
prerelease:
|
4
|
+
version: 2.0.0
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Jamie Winsor
|
9
9
|
- Josiah Kiehl
|
10
10
|
- Michael Ivey
|
11
11
|
- Justin Campbell
|
12
|
+
- Seth Vargo
|
12
13
|
autorequire:
|
13
14
|
bindir: bin
|
14
15
|
cert_chain: []
|
15
|
-
date: 2013-
|
16
|
+
date: 2013-06-06 00:00:00.000000000 Z
|
16
17
|
dependencies:
|
17
18
|
- !ruby/object:Gem::Dependency
|
18
|
-
name:
|
19
|
+
name: activesupport
|
19
20
|
requirement: !ruby/object:Gem::Requirement
|
20
21
|
none: false
|
21
22
|
requirements:
|
22
23
|
- - ! '>='
|
23
24
|
- !ruby/object:Gem::Version
|
24
|
-
version:
|
25
|
+
version: 3.2.0
|
25
26
|
type: :runtime
|
26
27
|
prerelease: false
|
27
28
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,31 +30,31 @@ dependencies:
|
|
29
30
|
requirements:
|
30
31
|
- - ! '>='
|
31
32
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
33
|
+
version: 3.2.0
|
33
34
|
- !ruby/object:Gem::Dependency
|
34
|
-
name:
|
35
|
+
name: addressable
|
35
36
|
requirement: !ruby/object:Gem::Requirement
|
36
37
|
none: false
|
37
38
|
requirements:
|
38
|
-
- -
|
39
|
+
- - ~>
|
39
40
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
41
|
+
version: 2.3.4
|
41
42
|
type: :runtime
|
42
43
|
prerelease: false
|
43
44
|
version_requirements: !ruby/object:Gem::Requirement
|
44
45
|
none: false
|
45
46
|
requirements:
|
46
|
-
- -
|
47
|
+
- - ~>
|
47
48
|
- !ruby/object:Gem::Version
|
48
|
-
version:
|
49
|
+
version: 2.3.4
|
49
50
|
- !ruby/object:Gem::Dependency
|
50
|
-
name:
|
51
|
+
name: celluloid
|
51
52
|
requirement: !ruby/object:Gem::Requirement
|
52
53
|
none: false
|
53
54
|
requirements:
|
54
55
|
- - ! '>='
|
55
56
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
57
|
+
version: 0.14.0
|
57
58
|
type: :runtime
|
58
59
|
prerelease: false
|
59
60
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -61,47 +62,47 @@ dependencies:
|
|
61
62
|
requirements:
|
62
63
|
- - ! '>='
|
63
64
|
- !ruby/object:Gem::Version
|
64
|
-
version:
|
65
|
+
version: 0.14.0
|
65
66
|
- !ruby/object:Gem::Dependency
|
66
|
-
name:
|
67
|
+
name: chozo
|
67
68
|
requirement: !ruby/object:Gem::Requirement
|
68
69
|
none: false
|
69
70
|
requirements:
|
70
|
-
- -
|
71
|
+
- - ! '>='
|
71
72
|
- !ruby/object:Gem::Version
|
72
|
-
version:
|
73
|
+
version: 0.6.1
|
73
74
|
type: :runtime
|
74
75
|
prerelease: false
|
75
76
|
version_requirements: !ruby/object:Gem::Requirement
|
76
77
|
none: false
|
77
78
|
requirements:
|
78
|
-
- -
|
79
|
+
- - ! '>='
|
79
80
|
- !ruby/object:Gem::Version
|
80
|
-
version:
|
81
|
+
version: 0.6.1
|
81
82
|
- !ruby/object:Gem::Dependency
|
82
|
-
name:
|
83
|
+
name: faraday
|
83
84
|
requirement: !ruby/object:Gem::Requirement
|
84
85
|
none: false
|
85
86
|
requirements:
|
86
|
-
- -
|
87
|
+
- - ! '>='
|
87
88
|
- !ruby/object:Gem::Version
|
88
|
-
version:
|
89
|
+
version: 0.8.5
|
89
90
|
type: :runtime
|
90
91
|
prerelease: false
|
91
92
|
version_requirements: !ruby/object:Gem::Requirement
|
92
93
|
none: false
|
93
94
|
requirements:
|
94
|
-
- -
|
95
|
+
- - ! '>='
|
95
96
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
97
|
+
version: 0.8.5
|
97
98
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
99
|
+
name: hashie
|
99
100
|
requirement: !ruby/object:Gem::Requirement
|
100
101
|
none: false
|
101
102
|
requirements:
|
102
103
|
- - ! '>='
|
103
104
|
- !ruby/object:Gem::Version
|
104
|
-
version: 0.
|
105
|
+
version: 2.0.2
|
105
106
|
type: :runtime
|
106
107
|
prerelease: false
|
107
108
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -109,15 +110,15 @@ dependencies:
|
|
109
110
|
requirements:
|
110
111
|
- - ! '>='
|
111
112
|
- !ruby/object:Gem::Version
|
112
|
-
version: 0.
|
113
|
+
version: 2.0.2
|
113
114
|
- !ruby/object:Gem::Dependency
|
114
|
-
name:
|
115
|
+
name: minitar
|
115
116
|
requirement: !ruby/object:Gem::Requirement
|
116
117
|
none: false
|
117
118
|
requirements:
|
118
119
|
- - ~>
|
119
120
|
- !ruby/object:Gem::Version
|
120
|
-
version: 0.
|
121
|
+
version: 0.5.4
|
121
122
|
type: :runtime
|
122
123
|
prerelease: false
|
123
124
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -125,47 +126,47 @@ dependencies:
|
|
125
126
|
requirements:
|
126
127
|
- - ~>
|
127
128
|
- !ruby/object:Gem::Version
|
128
|
-
version: 0.
|
129
|
+
version: 0.5.4
|
129
130
|
- !ruby/object:Gem::Dependency
|
130
|
-
name:
|
131
|
+
name: retryable
|
131
132
|
requirement: !ruby/object:Gem::Requirement
|
132
133
|
none: false
|
133
134
|
requirements:
|
134
|
-
- -
|
135
|
+
- - ~>
|
135
136
|
- !ruby/object:Gem::Version
|
136
|
-
version:
|
137
|
+
version: 1.3.3
|
137
138
|
type: :runtime
|
138
139
|
prerelease: false
|
139
140
|
version_requirements: !ruby/object:Gem::Requirement
|
140
141
|
none: false
|
141
142
|
requirements:
|
142
|
-
- -
|
143
|
+
- - ~>
|
143
144
|
- !ruby/object:Gem::Version
|
144
|
-
version:
|
145
|
+
version: 1.3.3
|
145
146
|
- !ruby/object:Gem::Dependency
|
146
|
-
name:
|
147
|
+
name: ridley
|
147
148
|
requirement: !ruby/object:Gem::Requirement
|
148
149
|
none: false
|
149
150
|
requirements:
|
150
|
-
- -
|
151
|
+
- - ~>
|
151
152
|
- !ruby/object:Gem::Version
|
152
|
-
version:
|
153
|
+
version: 1.0.0
|
153
154
|
type: :runtime
|
154
155
|
prerelease: false
|
155
156
|
version_requirements: !ruby/object:Gem::Requirement
|
156
157
|
none: false
|
157
158
|
requirements:
|
158
|
-
- -
|
159
|
+
- - ~>
|
159
160
|
- !ruby/object:Gem::Version
|
160
|
-
version:
|
161
|
+
version: 1.0.0
|
161
162
|
- !ruby/object:Gem::Dependency
|
162
|
-
name:
|
163
|
+
name: solve
|
163
164
|
requirement: !ruby/object:Gem::Requirement
|
164
165
|
none: false
|
165
166
|
requirements:
|
166
167
|
- - ! '>='
|
167
168
|
- !ruby/object:Gem::Version
|
168
|
-
version:
|
169
|
+
version: 0.4.4
|
169
170
|
type: :runtime
|
170
171
|
prerelease: false
|
171
172
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -173,15 +174,15 @@ dependencies:
|
|
173
174
|
requirements:
|
174
175
|
- - ! '>='
|
175
176
|
- !ruby/object:Gem::Version
|
176
|
-
version:
|
177
|
+
version: 0.4.4
|
177
178
|
- !ruby/object:Gem::Dependency
|
178
|
-
name:
|
179
|
+
name: test-kitchen
|
179
180
|
requirement: !ruby/object:Gem::Requirement
|
180
181
|
none: false
|
181
182
|
requirements:
|
182
183
|
- - ! '>='
|
183
184
|
- !ruby/object:Gem::Version
|
184
|
-
version: 0.
|
185
|
+
version: 1.0.0.alpha7
|
185
186
|
type: :runtime
|
186
187
|
prerelease: false
|
187
188
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -189,7 +190,7 @@ dependencies:
|
|
189
190
|
requirements:
|
190
191
|
- - ! '>='
|
191
192
|
- !ruby/object:Gem::Version
|
192
|
-
version: 0.
|
193
|
+
version: 1.0.0.alpha7
|
193
194
|
- !ruby/object:Gem::Dependency
|
194
195
|
name: thor
|
195
196
|
requirement: !ruby/object:Gem::Requirement
|
@@ -207,103 +208,215 @@ dependencies:
|
|
207
208
|
- !ruby/object:Gem::Version
|
208
209
|
version: 0.18.0
|
209
210
|
- !ruby/object:Gem::Dependency
|
210
|
-
name:
|
211
|
+
name: aruba
|
211
212
|
requirement: !ruby/object:Gem::Requirement
|
212
213
|
none: false
|
213
214
|
requirements:
|
214
|
-
- -
|
215
|
+
- - ~>
|
215
216
|
- !ruby/object:Gem::Version
|
216
|
-
version: '0'
|
217
|
-
type: :
|
217
|
+
version: '0.5'
|
218
|
+
type: :development
|
218
219
|
prerelease: false
|
219
220
|
version_requirements: !ruby/object:Gem::Requirement
|
220
221
|
none: false
|
221
222
|
requirements:
|
222
|
-
- -
|
223
|
+
- - ~>
|
223
224
|
- !ruby/object:Gem::Version
|
224
|
-
version: '0'
|
225
|
+
version: '0.5'
|
225
226
|
- !ruby/object:Gem::Dependency
|
226
|
-
name:
|
227
|
+
name: cane
|
227
228
|
requirement: !ruby/object:Gem::Requirement
|
228
229
|
none: false
|
229
230
|
requirements:
|
230
|
-
- -
|
231
|
+
- - ~>
|
231
232
|
- !ruby/object:Gem::Version
|
232
|
-
version: '
|
233
|
-
type: :
|
233
|
+
version: '2.5'
|
234
|
+
type: :development
|
234
235
|
prerelease: false
|
235
236
|
version_requirements: !ruby/object:Gem::Requirement
|
236
237
|
none: false
|
237
238
|
requirements:
|
238
|
-
- -
|
239
|
+
- - ~>
|
239
240
|
- !ruby/object:Gem::Version
|
240
|
-
version: '
|
241
|
+
version: '2.5'
|
241
242
|
- !ruby/object:Gem::Dependency
|
242
|
-
name:
|
243
|
+
name: chef-zero
|
243
244
|
requirement: !ruby/object:Gem::Requirement
|
244
245
|
none: false
|
245
246
|
requirements:
|
246
|
-
- -
|
247
|
+
- - ~>
|
247
248
|
- !ruby/object:Gem::Version
|
248
|
-
version: '
|
249
|
+
version: '1.1'
|
249
250
|
type: :development
|
250
251
|
prerelease: false
|
251
252
|
version_requirements: !ruby/object:Gem::Requirement
|
252
253
|
none: false
|
253
254
|
requirements:
|
254
|
-
- -
|
255
|
+
- - ~>
|
255
256
|
- !ruby/object:Gem::Version
|
256
|
-
version: '
|
257
|
+
version: '1.1'
|
257
258
|
- !ruby/object:Gem::Dependency
|
258
|
-
name:
|
259
|
+
name: fuubar
|
259
260
|
requirement: !ruby/object:Gem::Requirement
|
260
261
|
none: false
|
261
262
|
requirements:
|
262
|
-
- -
|
263
|
+
- - ~>
|
263
264
|
- !ruby/object:Gem::Version
|
264
|
-
version: '
|
265
|
+
version: '1.1'
|
265
266
|
type: :development
|
266
267
|
prerelease: false
|
267
268
|
version_requirements: !ruby/object:Gem::Requirement
|
268
269
|
none: false
|
269
270
|
requirements:
|
270
|
-
- -
|
271
|
+
- - ~>
|
271
272
|
- !ruby/object:Gem::Version
|
272
|
-
version: '
|
273
|
+
version: '1.1'
|
273
274
|
- !ruby/object:Gem::Dependency
|
274
275
|
name: rake
|
275
276
|
requirement: !ruby/object:Gem::Requirement
|
276
277
|
none: false
|
277
278
|
requirements:
|
278
|
-
- -
|
279
|
+
- - ~>
|
279
280
|
- !ruby/object:Gem::Version
|
280
|
-
version: 0.9
|
281
|
+
version: '0.9'
|
281
282
|
type: :development
|
282
283
|
prerelease: false
|
283
284
|
version_requirements: !ruby/object:Gem::Requirement
|
284
285
|
none: false
|
285
286
|
requirements:
|
286
|
-
- -
|
287
|
+
- - ~>
|
287
288
|
- !ruby/object:Gem::Version
|
288
|
-
version: 0.9
|
289
|
+
version: '0.9'
|
289
290
|
- !ruby/object:Gem::Dependency
|
290
291
|
name: rspec
|
291
292
|
requirement: !ruby/object:Gem::Requirement
|
292
293
|
none: false
|
293
294
|
requirements:
|
294
|
-
- -
|
295
|
+
- - ~>
|
295
296
|
- !ruby/object:Gem::Version
|
296
|
-
version: '
|
297
|
+
version: '2.13'
|
297
298
|
type: :development
|
298
299
|
prerelease: false
|
299
300
|
version_requirements: !ruby/object:Gem::Requirement
|
300
301
|
none: false
|
301
302
|
requirements:
|
302
|
-
- -
|
303
|
+
- - ~>
|
303
304
|
- !ruby/object:Gem::Version
|
304
|
-
version: '
|
305
|
+
version: '2.13'
|
305
306
|
- !ruby/object:Gem::Dependency
|
306
307
|
name: simplecov
|
308
|
+
requirement: !ruby/object:Gem::Requirement
|
309
|
+
none: false
|
310
|
+
requirements:
|
311
|
+
- - ~>
|
312
|
+
- !ruby/object:Gem::Version
|
313
|
+
version: '0.7'
|
314
|
+
type: :development
|
315
|
+
prerelease: false
|
316
|
+
version_requirements: !ruby/object:Gem::Requirement
|
317
|
+
none: false
|
318
|
+
requirements:
|
319
|
+
- - ~>
|
320
|
+
- !ruby/object:Gem::Version
|
321
|
+
version: '0.7'
|
322
|
+
- !ruby/object:Gem::Dependency
|
323
|
+
name: spork
|
324
|
+
requirement: !ruby/object:Gem::Requirement
|
325
|
+
none: false
|
326
|
+
requirements:
|
327
|
+
- - ~>
|
328
|
+
- !ruby/object:Gem::Version
|
329
|
+
version: '0.9'
|
330
|
+
type: :development
|
331
|
+
prerelease: false
|
332
|
+
version_requirements: !ruby/object:Gem::Requirement
|
333
|
+
none: false
|
334
|
+
requirements:
|
335
|
+
- - ~>
|
336
|
+
- !ruby/object:Gem::Version
|
337
|
+
version: '0.9'
|
338
|
+
- !ruby/object:Gem::Dependency
|
339
|
+
name: vcr
|
340
|
+
requirement: !ruby/object:Gem::Requirement
|
341
|
+
none: false
|
342
|
+
requirements:
|
343
|
+
- - ~>
|
344
|
+
- !ruby/object:Gem::Version
|
345
|
+
version: '2.4'
|
346
|
+
type: :development
|
347
|
+
prerelease: false
|
348
|
+
version_requirements: !ruby/object:Gem::Requirement
|
349
|
+
none: false
|
350
|
+
requirements:
|
351
|
+
- - ~>
|
352
|
+
- !ruby/object:Gem::Version
|
353
|
+
version: '2.4'
|
354
|
+
- !ruby/object:Gem::Dependency
|
355
|
+
name: webmock
|
356
|
+
requirement: !ruby/object:Gem::Requirement
|
357
|
+
none: false
|
358
|
+
requirements:
|
359
|
+
- - ~>
|
360
|
+
- !ruby/object:Gem::Version
|
361
|
+
version: '1.11'
|
362
|
+
type: :development
|
363
|
+
prerelease: false
|
364
|
+
version_requirements: !ruby/object:Gem::Requirement
|
365
|
+
none: false
|
366
|
+
requirements:
|
367
|
+
- - ~>
|
368
|
+
- !ruby/object:Gem::Version
|
369
|
+
version: '1.11'
|
370
|
+
- !ruby/object:Gem::Dependency
|
371
|
+
name: yard
|
372
|
+
requirement: !ruby/object:Gem::Requirement
|
373
|
+
none: false
|
374
|
+
requirements:
|
375
|
+
- - ~>
|
376
|
+
- !ruby/object:Gem::Version
|
377
|
+
version: '0.8'
|
378
|
+
type: :development
|
379
|
+
prerelease: false
|
380
|
+
version_requirements: !ruby/object:Gem::Requirement
|
381
|
+
none: false
|
382
|
+
requirements:
|
383
|
+
- - ~>
|
384
|
+
- !ruby/object:Gem::Version
|
385
|
+
version: '0.8'
|
386
|
+
- !ruby/object:Gem::Dependency
|
387
|
+
name: coolline
|
388
|
+
requirement: !ruby/object:Gem::Requirement
|
389
|
+
none: false
|
390
|
+
requirements:
|
391
|
+
- - ~>
|
392
|
+
- !ruby/object:Gem::Version
|
393
|
+
version: 0.4.2
|
394
|
+
type: :development
|
395
|
+
prerelease: false
|
396
|
+
version_requirements: !ruby/object:Gem::Requirement
|
397
|
+
none: false
|
398
|
+
requirements:
|
399
|
+
- - ~>
|
400
|
+
- !ruby/object:Gem::Version
|
401
|
+
version: 0.4.2
|
402
|
+
- !ruby/object:Gem::Dependency
|
403
|
+
name: guard
|
404
|
+
requirement: !ruby/object:Gem::Requirement
|
405
|
+
none: false
|
406
|
+
requirements:
|
407
|
+
- - ~>
|
408
|
+
- !ruby/object:Gem::Version
|
409
|
+
version: '1.8'
|
410
|
+
type: :development
|
411
|
+
prerelease: false
|
412
|
+
version_requirements: !ruby/object:Gem::Requirement
|
413
|
+
none: false
|
414
|
+
requirements:
|
415
|
+
- - ~>
|
416
|
+
- !ruby/object:Gem::Version
|
417
|
+
version: '1.8'
|
418
|
+
- !ruby/object:Gem::Dependency
|
419
|
+
name: guard-cane
|
307
420
|
requirement: !ruby/object:Gem::Requirement
|
308
421
|
none: false
|
309
422
|
requirements:
|
@@ -319,7 +432,7 @@ dependencies:
|
|
319
432
|
- !ruby/object:Gem::Version
|
320
433
|
version: '0'
|
321
434
|
- !ruby/object:Gem::Dependency
|
322
|
-
name:
|
435
|
+
name: guard-cucumber
|
323
436
|
requirement: !ruby/object:Gem::Requirement
|
324
437
|
none: false
|
325
438
|
requirements:
|
@@ -335,7 +448,7 @@ dependencies:
|
|
335
448
|
- !ruby/object:Gem::Version
|
336
449
|
version: '0'
|
337
450
|
- !ruby/object:Gem::Dependency
|
338
|
-
name:
|
451
|
+
name: guard-rspec
|
339
452
|
requirement: !ruby/object:Gem::Requirement
|
340
453
|
none: false
|
341
454
|
requirements:
|
@@ -351,7 +464,7 @@ dependencies:
|
|
351
464
|
- !ruby/object:Gem::Version
|
352
465
|
version: '0'
|
353
466
|
- !ruby/object:Gem::Dependency
|
354
|
-
name:
|
467
|
+
name: guard-spork
|
355
468
|
requirement: !ruby/object:Gem::Requirement
|
356
469
|
none: false
|
357
470
|
requirements:
|
@@ -367,27 +480,28 @@ dependencies:
|
|
367
480
|
- !ruby/object:Gem::Version
|
368
481
|
version: '0'
|
369
482
|
- !ruby/object:Gem::Dependency
|
370
|
-
name:
|
483
|
+
name: guard-yard
|
371
484
|
requirement: !ruby/object:Gem::Requirement
|
372
485
|
none: false
|
373
486
|
requirements:
|
374
|
-
- -
|
487
|
+
- - ! '>='
|
375
488
|
- !ruby/object:Gem::Version
|
376
|
-
version:
|
489
|
+
version: '0'
|
377
490
|
type: :development
|
378
491
|
prerelease: false
|
379
492
|
version_requirements: !ruby/object:Gem::Requirement
|
380
493
|
none: false
|
381
494
|
requirements:
|
382
|
-
- -
|
495
|
+
- - ! '>='
|
383
496
|
- !ruby/object:Gem::Version
|
384
|
-
version:
|
497
|
+
version: '0'
|
385
498
|
description: Manages a Cookbook's, or an Application's, Cookbook dependencies
|
386
499
|
email:
|
387
500
|
- reset@riotgames.com
|
388
501
|
- jkiehl@riotgames.com
|
389
502
|
- michael.ivey@riotgames.com
|
390
503
|
- justin.campbell@riotgames.com
|
504
|
+
- sethvargo@gmail.com
|
391
505
|
executables:
|
392
506
|
- berks
|
393
507
|
extensions: []
|
@@ -416,15 +530,17 @@ files:
|
|
416
530
|
- features/default_locations.feature
|
417
531
|
- features/groups_install.feature
|
418
532
|
- features/help.feature
|
419
|
-
- features/info_command.feature
|
420
533
|
- features/init_command.feature
|
421
534
|
- features/install_command.feature
|
422
535
|
- features/json_formatter.feature
|
536
|
+
- features/licenses.feature
|
423
537
|
- features/list_command.feature
|
424
538
|
- features/lockfile.feature
|
425
|
-
- features/open_command.feature
|
426
539
|
- features/outdated_command.feature
|
427
540
|
- features/package_command.feature
|
541
|
+
- features/shelf/list.feature
|
542
|
+
- features/shelf/show.feature
|
543
|
+
- features/shelf/uninstall.feature
|
428
544
|
- features/show_command.feature
|
429
545
|
- features/step_definitions/berksfile_steps.rb
|
430
546
|
- features/step_definitions/chef_server_steps.rb
|
@@ -463,8 +579,9 @@ files:
|
|
463
579
|
- lib/berkshelf/chef/cookbook.rb
|
464
580
|
- lib/berkshelf/chef/cookbook/chefignore.rb
|
465
581
|
- lib/berkshelf/cli.rb
|
466
|
-
- lib/berkshelf/cli_commands/test_command.rb
|
467
582
|
- lib/berkshelf/command.rb
|
583
|
+
- lib/berkshelf/commands/shelf.rb
|
584
|
+
- lib/berkshelf/commands/test_command.rb
|
468
585
|
- lib/berkshelf/community_rest.rb
|
469
586
|
- lib/berkshelf/config.rb
|
470
587
|
- lib/berkshelf/cookbook_generator.rb
|
@@ -491,9 +608,9 @@ files:
|
|
491
608
|
- lib/berkshelf/locations/site_location.rb
|
492
609
|
- lib/berkshelf/lockfile.rb
|
493
610
|
- lib/berkshelf/logger.rb
|
494
|
-
- lib/berkshelf/mixin.rb
|
611
|
+
- lib/berkshelf/mixin/config.rb
|
495
612
|
- lib/berkshelf/mixin/logging.rb
|
496
|
-
- lib/berkshelf/mixin/
|
613
|
+
- lib/berkshelf/mixin/shellout.rb
|
497
614
|
- lib/berkshelf/resolver.rb
|
498
615
|
- lib/berkshelf/test.rb
|
499
616
|
- lib/berkshelf/thor.rb
|
@@ -502,6 +619,9 @@ files:
|
|
502
619
|
- lib/thor/monkies.rb
|
503
620
|
- lib/thor/monkies/hash_with_indifferent_access.rb
|
504
621
|
- lib/thor/monkies/shell.rb
|
622
|
+
- spec/config/berkshelf.pem
|
623
|
+
- spec/config/knife.rb
|
624
|
+
- spec/config/validator.pem
|
505
625
|
- spec/fixtures/Berksfile
|
506
626
|
- spec/fixtures/cassettes/Berkshelf_CommunityREST/_download/unpacks_the_archive.json
|
507
627
|
- spec/fixtures/cassettes/Berkshelf_CommunityREST/_find/raises_a_CommunitySiteError_error_on_any_non_200_or_404_response.json
|
@@ -548,7 +668,6 @@ files:
|
|
548
668
|
- spec/spec_helper.rb
|
549
669
|
- spec/support/chef_api.rb
|
550
670
|
- spec/support/chef_server.rb
|
551
|
-
- spec/support/knife.rb
|
552
671
|
- spec/support/matchers/file_system_matchers.rb
|
553
672
|
- spec/support/matchers/filepath_matchers.rb
|
554
673
|
- spec/support/test_generators.rb
|
@@ -613,15 +732,17 @@ test_files:
|
|
613
732
|
- features/default_locations.feature
|
614
733
|
- features/groups_install.feature
|
615
734
|
- features/help.feature
|
616
|
-
- features/info_command.feature
|
617
735
|
- features/init_command.feature
|
618
736
|
- features/install_command.feature
|
619
737
|
- features/json_formatter.feature
|
738
|
+
- features/licenses.feature
|
620
739
|
- features/list_command.feature
|
621
740
|
- features/lockfile.feature
|
622
|
-
- features/open_command.feature
|
623
741
|
- features/outdated_command.feature
|
624
742
|
- features/package_command.feature
|
743
|
+
- features/shelf/list.feature
|
744
|
+
- features/shelf/show.feature
|
745
|
+
- features/shelf/uninstall.feature
|
625
746
|
- features/show_command.feature
|
626
747
|
- features/step_definitions/berksfile_steps.rb
|
627
748
|
- features/step_definitions/chef_server_steps.rb
|
@@ -635,6 +756,9 @@ test_files:
|
|
635
756
|
- features/update_command.feature
|
636
757
|
- features/upload_command.feature
|
637
758
|
- features/vendor_install.feature
|
759
|
+
- spec/config/berkshelf.pem
|
760
|
+
- spec/config/knife.rb
|
761
|
+
- spec/config/validator.pem
|
638
762
|
- spec/fixtures/Berksfile
|
639
763
|
- spec/fixtures/cassettes/Berkshelf_CommunityREST/_download/unpacks_the_archive.json
|
640
764
|
- spec/fixtures/cassettes/Berkshelf_CommunityREST/_find/raises_a_CommunitySiteError_error_on_any_non_200_or_404_response.json
|
@@ -681,7 +805,6 @@ test_files:
|
|
681
805
|
- spec/spec_helper.rb
|
682
806
|
- spec/support/chef_api.rb
|
683
807
|
- spec/support/chef_server.rb
|
684
|
-
- spec/support/knife.rb
|
685
808
|
- spec/support/matchers/file_system_matchers.rb
|
686
809
|
- spec/support/matchers/filepath_matchers.rb
|
687
810
|
- spec/support/test_generators.rb
|