chef-skel 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +215 -0
- data/Rakefile +6 -0
- data/chef-skel.gemspec +25 -0
- data/lib/chef_skel/integration_spec_helper.rb +45 -0
- data/lib/chef_skel/rake_tasks.rb +148 -0
- data/lib/chef_skel/unit_spec_helper.rb +3 -0
- data/lib/chef_skel/version.rb +3 -0
- metadata +157 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,215 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
chef-skel (0.1.0)
|
5
|
+
berkshelf
|
6
|
+
chef
|
7
|
+
chefspec
|
8
|
+
foodcritic
|
9
|
+
rake
|
10
|
+
serverspec
|
11
|
+
|
12
|
+
GEM
|
13
|
+
remote: https://rubygems.org/
|
14
|
+
specs:
|
15
|
+
activesupport (3.2.13)
|
16
|
+
i18n (= 0.6.1)
|
17
|
+
multi_json (~> 1.0)
|
18
|
+
addressable (2.3.4)
|
19
|
+
akami (1.2.0)
|
20
|
+
gyoku (>= 0.4.0)
|
21
|
+
nokogiri (>= 1.4.0)
|
22
|
+
berkshelf (2.0.5)
|
23
|
+
activesupport (>= 3.2.0)
|
24
|
+
addressable (~> 2.3.4)
|
25
|
+
buff-shell_out (~> 0.1)
|
26
|
+
celluloid (>= 0.14.0)
|
27
|
+
chozo (>= 0.6.1)
|
28
|
+
faraday (>= 0.8.5)
|
29
|
+
hashie (>= 2.0.2)
|
30
|
+
minitar (~> 0.5.4)
|
31
|
+
rbzip2 (~> 0.2.0)
|
32
|
+
retryable (~> 1.3.3)
|
33
|
+
ridley (~> 1.2.1)
|
34
|
+
solve (>= 0.5.0)
|
35
|
+
thor (~> 0.18.0)
|
36
|
+
buff-extensions (0.5.0)
|
37
|
+
buff-ruby_engine (0.1.0)
|
38
|
+
buff-shell_out (0.1.0)
|
39
|
+
buff-ruby_engine (~> 0.1.0)
|
40
|
+
builder (3.2.2)
|
41
|
+
celluloid (0.14.1)
|
42
|
+
timers (>= 1.0.0)
|
43
|
+
celluloid-io (0.14.1)
|
44
|
+
celluloid (>= 0.14.1)
|
45
|
+
nio4r (>= 0.4.5)
|
46
|
+
chef (11.4.4)
|
47
|
+
erubis
|
48
|
+
highline (>= 1.6.9)
|
49
|
+
json (>= 1.4.4, <= 1.7.7)
|
50
|
+
mixlib-authentication (>= 1.3.0)
|
51
|
+
mixlib-cli (~> 1.3.0)
|
52
|
+
mixlib-config (>= 1.1.2)
|
53
|
+
mixlib-log (>= 1.3.0)
|
54
|
+
mixlib-shellout
|
55
|
+
net-ssh (~> 2.6)
|
56
|
+
net-ssh-multi (~> 1.1.0)
|
57
|
+
ohai (>= 0.6.0)
|
58
|
+
rest-client (>= 1.0.4, < 1.7.0)
|
59
|
+
yajl-ruby (~> 1.1)
|
60
|
+
chefspec (1.3.1)
|
61
|
+
chef (>= 10.0)
|
62
|
+
erubis
|
63
|
+
fauxhai (>= 0.1.1, < 2.0)
|
64
|
+
minitest-chef-handler (>= 0.6.0)
|
65
|
+
rspec (~> 2.0)
|
66
|
+
chozo (0.6.1)
|
67
|
+
activesupport (>= 3.2.0)
|
68
|
+
hashie (>= 2.0.2)
|
69
|
+
multi_json (>= 1.3.0)
|
70
|
+
ci_reporter (1.8.4)
|
71
|
+
builder (>= 2.1.2)
|
72
|
+
diff-lcs (1.2.4)
|
73
|
+
erubis (2.7.0)
|
74
|
+
faraday (0.8.7)
|
75
|
+
multipart-post (~> 1.1)
|
76
|
+
fauxhai (1.1.1)
|
77
|
+
httparty
|
78
|
+
net-ssh
|
79
|
+
ohai
|
80
|
+
ffi (1.9.0)
|
81
|
+
foodcritic (2.1.0)
|
82
|
+
erubis
|
83
|
+
gherkin (~> 2.11.7)
|
84
|
+
nokogiri (~> 1.5.4)
|
85
|
+
rak (~> 1.4)
|
86
|
+
treetop (~> 1.4.10)
|
87
|
+
yajl-ruby (~> 1.1.0)
|
88
|
+
gherkin (2.11.8)
|
89
|
+
multi_json (~> 1.3)
|
90
|
+
gssapi (1.0.3)
|
91
|
+
ffi (>= 1.0.1)
|
92
|
+
gyoku (1.0.0)
|
93
|
+
builder (>= 2.1.2)
|
94
|
+
hashie (2.0.5)
|
95
|
+
highline (1.6.19)
|
96
|
+
httparty (0.11.0)
|
97
|
+
multi_json (~> 1.0)
|
98
|
+
multi_xml (>= 0.5.2)
|
99
|
+
httpclient (2.2.0.2)
|
100
|
+
httpi (0.9.7)
|
101
|
+
rack
|
102
|
+
i18n (0.6.1)
|
103
|
+
ipaddress (0.8.0)
|
104
|
+
json (1.7.7)
|
105
|
+
little-plugger (1.1.3)
|
106
|
+
logging (1.6.2)
|
107
|
+
little-plugger (>= 1.1.3)
|
108
|
+
mime-types (1.23)
|
109
|
+
minitar (0.5.4)
|
110
|
+
minitest (4.7.5)
|
111
|
+
minitest-chef-handler (1.0.1)
|
112
|
+
chef
|
113
|
+
ci_reporter
|
114
|
+
minitest (~> 4.7.3)
|
115
|
+
mixlib-authentication (1.3.0)
|
116
|
+
mixlib-log
|
117
|
+
mixlib-cli (1.3.0)
|
118
|
+
mixlib-config (1.1.2)
|
119
|
+
mixlib-log (1.6.0)
|
120
|
+
mixlib-shellout (1.1.0)
|
121
|
+
multi_json (1.7.7)
|
122
|
+
multi_xml (0.5.4)
|
123
|
+
multipart-post (1.2.0)
|
124
|
+
net-http-persistent (2.8)
|
125
|
+
net-ssh (2.6.7)
|
126
|
+
net-ssh-gateway (1.2.0)
|
127
|
+
net-ssh (>= 2.6.5)
|
128
|
+
net-ssh-multi (1.1)
|
129
|
+
net-ssh (>= 2.1.4)
|
130
|
+
net-ssh-gateway (>= 0.99.0)
|
131
|
+
nio4r (0.4.6)
|
132
|
+
nokogiri (1.5.10)
|
133
|
+
nori (1.1.5)
|
134
|
+
ohai (6.16.0)
|
135
|
+
ipaddress
|
136
|
+
mixlib-cli
|
137
|
+
mixlib-config
|
138
|
+
mixlib-log
|
139
|
+
mixlib-shellout
|
140
|
+
systemu
|
141
|
+
yajl-ruby
|
142
|
+
polyglot (0.3.3)
|
143
|
+
rack (1.5.2)
|
144
|
+
rak (1.4)
|
145
|
+
rake (10.1.0)
|
146
|
+
rbzip2 (0.2.0)
|
147
|
+
rest-client (1.6.7)
|
148
|
+
mime-types (>= 1.16)
|
149
|
+
retryable (1.3.3)
|
150
|
+
ridley (1.2.3)
|
151
|
+
addressable
|
152
|
+
buff-extensions (~> 0.3)
|
153
|
+
buff-shell_out (~> 0.1)
|
154
|
+
celluloid (~> 0.14.0)
|
155
|
+
celluloid-io (~> 0.14.0)
|
156
|
+
erubis
|
157
|
+
faraday (>= 0.8.4)
|
158
|
+
hashie (>= 2.0.2)
|
159
|
+
json (>= 1.7.7)
|
160
|
+
mixlib-authentication (>= 1.3.0)
|
161
|
+
net-http-persistent (>= 2.8)
|
162
|
+
net-ssh
|
163
|
+
retryable
|
164
|
+
solve (>= 0.4.4)
|
165
|
+
varia_model (~> 0.1)
|
166
|
+
winrm (~> 1.1.0)
|
167
|
+
rspec (2.13.0)
|
168
|
+
rspec-core (~> 2.13.0)
|
169
|
+
rspec-expectations (~> 2.13.0)
|
170
|
+
rspec-mocks (~> 2.13.0)
|
171
|
+
rspec-core (2.13.1)
|
172
|
+
rspec-expectations (2.13.0)
|
173
|
+
diff-lcs (>= 1.1.3, < 2.0)
|
174
|
+
rspec-mocks (2.13.1)
|
175
|
+
rubyntlm (0.1.1)
|
176
|
+
savon (0.9.5)
|
177
|
+
akami (~> 1.0)
|
178
|
+
builder (>= 2.1.2)
|
179
|
+
gyoku (>= 0.4.0)
|
180
|
+
httpi (~> 0.9)
|
181
|
+
nokogiri (>= 1.4.0)
|
182
|
+
nori (~> 1.0)
|
183
|
+
wasabi (~> 1.0)
|
184
|
+
serverspec (0.6.7)
|
185
|
+
highline
|
186
|
+
net-ssh
|
187
|
+
rspec (~> 2.13.0)
|
188
|
+
solve (0.5.0)
|
189
|
+
systemu (2.5.2)
|
190
|
+
thor (0.18.1)
|
191
|
+
timers (1.1.0)
|
192
|
+
treetop (1.4.14)
|
193
|
+
polyglot
|
194
|
+
polyglot (>= 0.3.1)
|
195
|
+
uuidtools (2.1.4)
|
196
|
+
varia_model (0.1.0)
|
197
|
+
buff-extensions (~> 0.1)
|
198
|
+
hashie (>= 2.0.2)
|
199
|
+
wasabi (1.0.0)
|
200
|
+
nokogiri (>= 1.4.0)
|
201
|
+
winrm (1.1.2)
|
202
|
+
gssapi (~> 1.0.0)
|
203
|
+
httpclient (~> 2.2.0.2)
|
204
|
+
logging (~> 1.6.1)
|
205
|
+
nokogiri (~> 1.5.0)
|
206
|
+
rubyntlm (~> 0.1.1)
|
207
|
+
savon (= 0.9.5)
|
208
|
+
uuidtools (~> 2.1.2)
|
209
|
+
yajl-ruby (1.1.0)
|
210
|
+
|
211
|
+
PLATFORMS
|
212
|
+
ruby
|
213
|
+
|
214
|
+
DEPENDENCIES
|
215
|
+
chef-skel!
|
data/Rakefile
ADDED
data/chef-skel.gemspec
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/chef_skel/version', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |s|
|
5
|
+
s.authors = ['Mathias Lafeldt']
|
6
|
+
s.email = ['mathias.lafeldt@gmail.com']
|
7
|
+
s.description = %q{Chef skeleton}
|
8
|
+
s.summary = s.description
|
9
|
+
s.homepage = 'http://mlafeldt.github.com/chef-skel'
|
10
|
+
s.license = 'MIT'
|
11
|
+
|
12
|
+
s.files = `git ls-files`.split($\)
|
13
|
+
s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
14
|
+
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
15
|
+
s.name = 'chef-skel'
|
16
|
+
s.require_paths = ['lib']
|
17
|
+
s.version = ChefSkel::VERSION
|
18
|
+
|
19
|
+
s.add_dependency 'berkshelf'
|
20
|
+
s.add_dependency 'chef'
|
21
|
+
s.add_dependency 'chefspec'
|
22
|
+
s.add_dependency 'foodcritic'
|
23
|
+
s.add_dependency 'rake'
|
24
|
+
s.add_dependency 'serverspec'
|
25
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'serverspec'
|
2
|
+
require 'pathname'
|
3
|
+
require 'net/ssh'
|
4
|
+
|
5
|
+
include Serverspec::Helper::Ssh
|
6
|
+
include Serverspec::Helper::DetectOS
|
7
|
+
|
8
|
+
SERVERSPEC_CONFIG_ROOT = ENV.fetch('SERVERSPEC_CONFIG_ROOT', '.vagrant/machines')
|
9
|
+
|
10
|
+
# Ask Vagrant for SSH config of host
|
11
|
+
def ssh_config_for_host(host)
|
12
|
+
config_file = File.join(SERVERSPEC_CONFIG_ROOT, host, 'ssh_config')
|
13
|
+
# TODO: find a way to cache results
|
14
|
+
ssh_config = `vagrant ssh-config #{host} --host #{host}`
|
15
|
+
File.open(config_file, 'w') { |file| file.write(ssh_config) }
|
16
|
+
config_file
|
17
|
+
end
|
18
|
+
|
19
|
+
RSpec.configure do |c|
|
20
|
+
if ENV['ASK_SUDO_PASSWORD']
|
21
|
+
require 'highline/import'
|
22
|
+
c.sudo_password = ask("Enter sudo password: ") { |q| q.echo = false }
|
23
|
+
else
|
24
|
+
c.sudo_password = ENV['SUDO_PASSWORD']
|
25
|
+
end
|
26
|
+
c.before :all do
|
27
|
+
block = self.class.metadata[:example_group_block]
|
28
|
+
if RUBY_VERSION.start_with?('1.8')
|
29
|
+
file = block.to_s.match(/.*@(.*):[0-9]+>/)[1]
|
30
|
+
else
|
31
|
+
file = block.source_location.first
|
32
|
+
end
|
33
|
+
dirname = Pathname.new(file).dirname
|
34
|
+
host = File.basename(dirname)
|
35
|
+
if c.host != host
|
36
|
+
c.ssh.close if c.ssh
|
37
|
+
c.host = host
|
38
|
+
config_file = ssh_config_for_host(host)
|
39
|
+
options = Net::SSH::Config.for(c.host, files=[config_file])
|
40
|
+
user = options[:user] || Etc.getlogin
|
41
|
+
c.ssh = Net::SSH.start(c.host, user, options)
|
42
|
+
c.os = backend(Serverspec::Commands::Base).check_os
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,148 @@
|
|
1
|
+
#
|
2
|
+
# Rake tasks to test your cookbook
|
3
|
+
#
|
4
|
+
# Copyright (C) 2012-2013 Mathias Lafeldt <mathias.lafeldt@gmail.com>
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
#
|
18
|
+
|
19
|
+
require 'rake'
|
20
|
+
require 'rake/clean'
|
21
|
+
require 'rspec/core/rake_task'
|
22
|
+
require 'chef/cookbook/metadata'
|
23
|
+
|
24
|
+
def cookbook_metadata
|
25
|
+
metadata = Chef::Cookbook::Metadata.new
|
26
|
+
metadata.from_file 'metadata.rb'
|
27
|
+
metadata
|
28
|
+
end
|
29
|
+
|
30
|
+
def cookbook_name
|
31
|
+
name = cookbook_metadata.name
|
32
|
+
if name.nil? || name.empty?
|
33
|
+
File.basename(File.dirname(__FILE__))
|
34
|
+
else
|
35
|
+
name
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
COOKBOOK_NAME = ENV.fetch('COOKBOOK_NAME', cookbook_name)
|
40
|
+
COOKBOOK_PATH = ENV.fetch('COOKBOOK_PATH', 'vendor/cookbooks')
|
41
|
+
|
42
|
+
CLOBBER.include COOKBOOK_PATH, 'Berksfile.lock', '.kitchen', '.vagrant'
|
43
|
+
|
44
|
+
desc 'Display information about the environment'
|
45
|
+
task :env do
|
46
|
+
{
|
47
|
+
:ruby => 'ruby --version',
|
48
|
+
:rubygems => 'gem --version',
|
49
|
+
:bundler => 'bundle --version',
|
50
|
+
:vagrant => 'vagrant --version',
|
51
|
+
:vagrant_berkshelf => 'vagrant plugin list 2>/dev/null | grep berkshelf',
|
52
|
+
:virtualbox => 'VBoxManage --version'
|
53
|
+
}.each do |key, cmd|
|
54
|
+
begin
|
55
|
+
result = `#{cmd}`.chomp
|
56
|
+
rescue Errno::ENOENT
|
57
|
+
result = 'not found'
|
58
|
+
end
|
59
|
+
puts " * #{key}: #{result}"
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
namespace :test do
|
64
|
+
task :prepare do
|
65
|
+
ENV['COOKBOOK_PATH'] = COOKBOOK_PATH
|
66
|
+
sh 'berks', 'install', '--path', COOKBOOK_PATH
|
67
|
+
# Run cleanup at exit unless an exception was raised.
|
68
|
+
at_exit { Rake::Task['test:cleanup'].invoke if $!.nil? }
|
69
|
+
end
|
70
|
+
|
71
|
+
task :cleanup do
|
72
|
+
rm_rf COOKBOOK_PATH
|
73
|
+
end
|
74
|
+
|
75
|
+
desc 'Run Knife syntax checks'
|
76
|
+
task :syntax => :prepare do
|
77
|
+
sh 'knife', 'cookbook', 'test', COOKBOOK_NAME, '--config', '.knife.rb',
|
78
|
+
'--cookbook-path', COOKBOOK_PATH
|
79
|
+
end
|
80
|
+
|
81
|
+
desc 'Run Foodcritic lint checks'
|
82
|
+
task :lint => :prepare do
|
83
|
+
# TODO: FoodCritic::Rake::LintTask is still experimental
|
84
|
+
sh 'foodcritic', '--epic-fail', 'any',
|
85
|
+
File.join(COOKBOOK_PATH, COOKBOOK_NAME)
|
86
|
+
end
|
87
|
+
|
88
|
+
desc 'Run ChefSpec examples'
|
89
|
+
RSpec::Core::RakeTask.new(:unit) do |t|
|
90
|
+
t.pattern = 'spec/unit/*_spec.rb'
|
91
|
+
t.rspec_opts = '--color --format documentation'
|
92
|
+
end
|
93
|
+
task :unit => :prepare
|
94
|
+
|
95
|
+
desc 'Run serverspec integration tests with Vagrant'
|
96
|
+
RSpec::Core::RakeTask.new(:integration) do |t|
|
97
|
+
t.pattern = 'spec/integration/**/*_spec.rb'
|
98
|
+
t.rspec_opts = '--color --format documentation'
|
99
|
+
end
|
100
|
+
task :integration => 'vagrant:provision'
|
101
|
+
|
102
|
+
desc 'Tear down VM used for integration tests'
|
103
|
+
task :integration_teardown do
|
104
|
+
# Shut VM down unless INTEGRATION_TEARDOWN is set to a different task.
|
105
|
+
Rake::Task[ENV.fetch('INTEGRATION_TEARDOWN', 'vagrant:halt')].invoke
|
106
|
+
end
|
107
|
+
|
108
|
+
desc 'Run test:syntax, test:lint, and test:unit'
|
109
|
+
task :travis => [:syntax, :lint, :unit]
|
110
|
+
|
111
|
+
desc 'Run test:syntax, test:lint, test:unit, and test:integration'
|
112
|
+
task :all => [:syntax, :lint, :unit, :integration, :integration_teardown]
|
113
|
+
end
|
114
|
+
|
115
|
+
namespace :vagrant do
|
116
|
+
desc 'Provision the VM using Chef'
|
117
|
+
task :provision do
|
118
|
+
# Provision VM depending on its state.
|
119
|
+
case `vagrant status`
|
120
|
+
when /The VM is running/ then ['provision']
|
121
|
+
when /To resume this VM/ then ['up', 'provision']
|
122
|
+
else ['up']
|
123
|
+
end.each { |cmd| sh 'vagrant', cmd }
|
124
|
+
end
|
125
|
+
|
126
|
+
desc 'SSH into the VM'
|
127
|
+
task :ssh do
|
128
|
+
sh 'vagrant', 'ssh'
|
129
|
+
end
|
130
|
+
|
131
|
+
desc 'Shutdown the VM'
|
132
|
+
task :halt do
|
133
|
+
sh 'vagrant', 'halt', '--force'
|
134
|
+
end
|
135
|
+
|
136
|
+
desc 'Destroy the VM'
|
137
|
+
task :destroy do
|
138
|
+
sh 'vagrant', 'destroy', '--force'
|
139
|
+
Rake::Task['test:cleanup'].invoke
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
# Aliases for backwards compatibility and convenience
|
144
|
+
task :lint => 'test:lint'
|
145
|
+
task :spec => 'test:unit'
|
146
|
+
task :test => 'test:all'
|
147
|
+
|
148
|
+
task :default => :test
|
metadata
ADDED
@@ -0,0 +1,157 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: chef-skel
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Mathias Lafeldt
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-06-24 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: berkshelf
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: chef
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: chefspec
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: foodcritic
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: rake
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
type: :runtime
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: serverspec
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :runtime
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
description: Chef skeleton
|
111
|
+
email:
|
112
|
+
- mathias.lafeldt@gmail.com
|
113
|
+
executables: []
|
114
|
+
extensions: []
|
115
|
+
extra_rdoc_files: []
|
116
|
+
files:
|
117
|
+
- .gitignore
|
118
|
+
- Gemfile
|
119
|
+
- Gemfile.lock
|
120
|
+
- Rakefile
|
121
|
+
- chef-skel.gemspec
|
122
|
+
- lib/chef_skel/integration_spec_helper.rb
|
123
|
+
- lib/chef_skel/rake_tasks.rb
|
124
|
+
- lib/chef_skel/unit_spec_helper.rb
|
125
|
+
- lib/chef_skel/version.rb
|
126
|
+
homepage: http://mlafeldt.github.com/chef-skel
|
127
|
+
licenses:
|
128
|
+
- MIT
|
129
|
+
post_install_message:
|
130
|
+
rdoc_options: []
|
131
|
+
require_paths:
|
132
|
+
- lib
|
133
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
134
|
+
none: false
|
135
|
+
requirements:
|
136
|
+
- - '>='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
segments:
|
140
|
+
- 0
|
141
|
+
hash: -3464971780163873864
|
142
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
143
|
+
none: false
|
144
|
+
requirements:
|
145
|
+
- - '>='
|
146
|
+
- !ruby/object:Gem::Version
|
147
|
+
version: '0'
|
148
|
+
segments:
|
149
|
+
- 0
|
150
|
+
hash: -3464971780163873864
|
151
|
+
requirements: []
|
152
|
+
rubyforge_project:
|
153
|
+
rubygems_version: 1.8.25
|
154
|
+
signing_key:
|
155
|
+
specification_version: 3
|
156
|
+
summary: Chef skeleton
|
157
|
+
test_files: []
|