stove 6.0.0 → 6.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/stove/version.rb +1 -1
- metadata +10 -70
- data/.gitignore +0 -19
- data/.travis.yml +0 -20
- data/CHANGELOG.md +0 -161
- data/Gemfile +0 -5
- data/README.md +0 -129
- data/Rakefile +0 -24
- data/bin/stove +0 -5
- data/features/plugins/community.feature +0 -41
- data/features/plugins/git.feature +0 -40
- data/features/step_definitions/community_steps.rb +0 -23
- data/features/step_definitions/config_steps.rb +0 -7
- data/features/step_definitions/cookbook_steps.rb +0 -47
- data/features/step_definitions/cucumber_steps.rb +0 -12
- data/features/step_definitions/git_steps.rb +0 -67
- data/features/support/env.rb +0 -34
- data/features/support/stove.pem +0 -27
- data/features/support/stove/git.rb +0 -68
- data/spec/fixtures/integration_cookbook/attributes/default.rb +0 -1
- data/spec/fixtures/integration_cookbook/metadata.rb +0 -2
- data/spec/fixtures/integration_cookbook/recipes/default.rb +0 -1
- data/spec/integration/artifactory_spec.rb +0 -90
- data/spec/integration/cookbook_spec.rb +0 -43
- data/spec/spec_helper.rb +0 -28
- data/spec/support/generators.rb +0 -133
- data/spec/unit/artifactory_spec.rb +0 -131
- data/spec/unit/cookbook/metadata_spec.rb +0 -176
- data/spec/unit/error_spec.rb +0 -133
- data/stove.gemspec +0 -34
- data/templates/errors/abstract_method.erb +0 -5
- data/templates/errors/artifactory_key_validation_failed.erb +0 -11
- data/templates/errors/git_clean_validation_failed.erb +0 -1
- data/templates/errors/git_failed.erb +0 -5
- data/templates/errors/git_repository_validation_failed.erb +0 -3
- data/templates/errors/git_tagging_failed.erb +0 -5
- data/templates/errors/git_up_to_date_validation_failed.erb +0 -7
- data/templates/errors/metadata_not_found.erb +0 -1
- data/templates/errors/server_unavailable.erb +0 -1
- data/templates/errors/stove_error.erb +0 -1
- data/templates/errors/supermarket_already_exists.erb +0 -5
- data/templates/errors/supermarket_key_validation_failed.erb +0 -3
- data/templates/errors/supermarket_username_validation_failed.erb +0 -3
data/spec/unit/error_spec.rb
DELETED
@@ -1,133 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
module Stove::Error
|
4
|
-
describe StoveError do
|
5
|
-
it 'raises an exception with the correct message' do
|
6
|
-
expect { raise described_class }.to raise_error { |error|
|
7
|
-
expect(error).to be_a(described_class)
|
8
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
9
|
-
Oh no! Something really bad happened. I am not sure what actually happened because this is the catch-all error, but you should most definitely report an issue on GitHub at https://github.com/sethvargo/stove.
|
10
|
-
EOH
|
11
|
-
}
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
describe GitFailed do
|
16
|
-
it 'raises an exception with the correct message' do
|
17
|
-
expect { raise described_class.new(command: 'foo') }.to raise_error { |error|
|
18
|
-
expect(error).to be_a(described_class)
|
19
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
20
|
-
An error occurred while running:
|
21
|
-
|
22
|
-
git foo
|
23
|
-
|
24
|
-
There is likely an informative message from git that explains what happened right above this message.
|
25
|
-
EOH
|
26
|
-
}
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
describe MetadataNotFound do
|
31
|
-
it 'raises an exception with the correct message' do
|
32
|
-
expect { raise described_class.new(path: '/path') }.to raise_error { |error|
|
33
|
-
expect(error).to be_a(described_class)
|
34
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
35
|
-
The file at `/path' does not exist or does not contain valid metadata. Please make sure you have specified the correct path and that the metdata file exists.
|
36
|
-
EOH
|
37
|
-
}
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
describe ServerUnavailable do
|
42
|
-
it 'raises an exception with the correct message' do
|
43
|
-
expect { raise described_class.new(url: 'http://server') }.to raise_error { |error|
|
44
|
-
expect(error).to be_a(described_class)
|
45
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
46
|
-
The server at `http://server' is unavailable or is not currently accepting client connections. Please ensure the server is accessible via ping (or telnet) on your local network. If this error persists, please contact your network administrator.
|
47
|
-
EOH
|
48
|
-
}
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
describe SupermarketKeyValidationFailed do
|
53
|
-
it 'raises an exception with the correct message' do
|
54
|
-
expect { raise described_class }.to raise_error { |error|
|
55
|
-
expect(error).to be_a(described_class)
|
56
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
57
|
-
You did not specify the path to a private key! The Chef Supermarket requires a private key for authentication:
|
58
|
-
|
59
|
-
stove --key ~/.chef/sethvargo.pem
|
60
|
-
EOH
|
61
|
-
}
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
describe SupermarketUsernameValidationFailed do
|
66
|
-
it 'raises an exception with the correct message' do
|
67
|
-
expect { raise described_class }.to raise_error { |error|
|
68
|
-
expect(error).to be_a(described_class)
|
69
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
70
|
-
You did not specify the username to authenticate with! The Chef Supermarket requires a username for authentication:
|
71
|
-
|
72
|
-
stove --username sethvargo
|
73
|
-
EOH
|
74
|
-
}
|
75
|
-
end
|
76
|
-
end
|
77
|
-
|
78
|
-
describe GitCleanValidationFailed do
|
79
|
-
it 'raises an exception with the correct message' do
|
80
|
-
expect { raise described_class.new(path: '/path') }.to raise_error { |error|
|
81
|
-
expect(error).to be_a(described_class)
|
82
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
83
|
-
The cookbook at `/path' has untracked files! In order to use the git plugin, you must have a clean working directory. Please commit or stash your changes before running Stove again.
|
84
|
-
EOH
|
85
|
-
}
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
describe GitRepositoryValidationFailed do
|
90
|
-
it 'raises an exception with the correct message' do
|
91
|
-
expect { raise described_class.new(path: '/path') }.to raise_error { |error|
|
92
|
-
expect(error).to be_a(described_class)
|
93
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
94
|
-
The cookbook at `/path' does not appear to be a valid git repository. In order to use the git plugin, your cookbook must be initialized as a git repository. To create a git repository, run:
|
95
|
-
|
96
|
-
git init /path
|
97
|
-
EOH
|
98
|
-
}
|
99
|
-
end
|
100
|
-
end
|
101
|
-
|
102
|
-
describe GitUpToDateValidationFailed do
|
103
|
-
it 'raises an exception with the correct message' do
|
104
|
-
expect { raise described_class.new(path: '/path') }.to raise_error { |error|
|
105
|
-
expect(error).to be_a(described_class)
|
106
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
107
|
-
The cookbook at `/path' is out of sync with the remote repository. Please update your local cache with the remote repository before continuing:
|
108
|
-
|
109
|
-
git pull
|
110
|
-
|
111
|
-
And then push your local changes to the remote repository:
|
112
|
-
|
113
|
-
git push
|
114
|
-
EOH
|
115
|
-
}
|
116
|
-
end
|
117
|
-
end
|
118
|
-
|
119
|
-
describe GitFailed do
|
120
|
-
it 'raises an exception with the correct message' do
|
121
|
-
expect { raise described_class.new(command: 'run') }.to raise_error { |error|
|
122
|
-
expect(error).to be_a(described_class)
|
123
|
-
expect(error.message).to eq <<-EOH.gsub(/^ {10}/, '')
|
124
|
-
An error occurred while running:
|
125
|
-
|
126
|
-
git run
|
127
|
-
|
128
|
-
There is likely an informative message from git that explains what happened right above this message.
|
129
|
-
EOH
|
130
|
-
}
|
131
|
-
end
|
132
|
-
end
|
133
|
-
end
|
data/stove.gemspec
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require 'stove/version'
|
5
|
-
|
6
|
-
Gem::Specification.new do |spec|
|
7
|
-
spec.name = 'stove'
|
8
|
-
spec.version = Stove::VERSION
|
9
|
-
spec.authors = ['Seth Vargo']
|
10
|
-
spec.email = ['sethvargo@gmail.com']
|
11
|
-
spec.description = "A utility for releasing Chef community cookbooks"
|
12
|
-
spec.summary = "A command-line utility for releasing Chef community cookbooks"
|
13
|
-
spec.homepage = 'https://github.com/sethvargo/stove'
|
14
|
-
spec.license = 'Apache 2.0'
|
15
|
-
|
16
|
-
spec.files = `git ls-files`.split($/)
|
17
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
-
spec.require_paths = ['lib']
|
20
|
-
|
21
|
-
spec.required_ruby_version = '>= 2.1'
|
22
|
-
|
23
|
-
# Runtime dependencies
|
24
|
-
spec.add_dependency 'chef-api', '~> 0.5'
|
25
|
-
spec.add_dependency 'logify', '~> 0.2'
|
26
|
-
|
27
|
-
spec.add_development_dependency 'aruba', '~> 0.6.0'
|
28
|
-
spec.add_development_dependency 'bundler', '~> 1.6'
|
29
|
-
spec.add_development_dependency 'community-zero', '~> 2.0'
|
30
|
-
spec.add_development_dependency 'rake'
|
31
|
-
spec.add_development_dependency 'rspec', '~> 3.0'
|
32
|
-
spec.add_development_dependency 'rspec-command', '~> 1.0'
|
33
|
-
spec.add_development_dependency 'webmock', '~> 3.0'
|
34
|
-
end
|
@@ -1,5 +0,0 @@
|
|
1
|
-
'<%= @method %>' is an abstract method. You must override this method in your subclass with the proper implementation and logic. For more information, please see the inline documentation for <%= @method %>. If you are not a developer, this is most likely a bug in the ChefAPI gem. Please file a bug report at:
|
2
|
-
|
3
|
-
https://github.com/sethvargo/stove/issues/new
|
4
|
-
|
5
|
-
and include the command(s) or code you ran to arrive at this error.
|
@@ -1,11 +0,0 @@
|
|
1
|
-
You did not specify an Artifactory API key! You can pass the key either via a command line argument:
|
2
|
-
|
3
|
-
stove --artifactory-key sUeEpLXJvfhw3UZHbVPrGCgdou8VI6fXpD5sUHd0pKAxCmuGWNHLgerpFPkCJ2EjBBPYcM4My
|
4
|
-
|
5
|
-
Or via a file path:
|
6
|
-
|
7
|
-
stove --artifactory-key @~/.artifactory/api.key
|
8
|
-
|
9
|
-
Or via an environment variable:
|
10
|
-
|
11
|
-
export ARTIFACTORY_API_KEY=sUeEpLXJvfhw3UZHbVPrGCgdou8VI6fXpD5sUHd0pKAxCmuGWNHLgerpFPkCJ2EjBBPYcM4My
|
@@ -1 +0,0 @@
|
|
1
|
-
The cookbook at `<%= @path %>' has untracked files! In order to use the git plugin, you must have a clean working directory. Please commit or stash your changes before running Stove again.
|
@@ -1 +0,0 @@
|
|
1
|
-
The file at `<%= @path %>' does not exist or does not contain valid metadata. Please make sure you have specified the correct path and that the metdata file exists.
|
@@ -1 +0,0 @@
|
|
1
|
-
The server at `<%= @url %>' is unavailable or is not currently accepting client connections. Please ensure the server is accessible via ping (or telnet) on your local network. If this error persists, please contact your network administrator.
|
@@ -1 +0,0 @@
|
|
1
|
-
Oh no! Something really bad happened. I am not sure what actually happened because this is the catch-all error, but you should most definitely report an issue on GitHub at https://github.com/sethvargo/stove.
|