vagrant-chefconfig 0.0.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.
- checksums.yaml +7 -0
- data/.gitignore +21 -0
- data/.travis.yml +5 -0
- data/Gemfile +16 -0
- data/LICENSE.txt +13 -0
- data/README.md +58 -0
- data/Rakefile +1 -0
- data/Vagrantfile +10 -0
- data/lib/vagrant-chefconfig.rb +18 -0
- data/lib/vagrant-chefconfig/action.rb +14 -0
- data/lib/vagrant-chefconfig/action/load_chef_config.rb +22 -0
- data/lib/vagrant-chefconfig/chef_client_configurator.rb +79 -0
- data/lib/vagrant-chefconfig/config.rb +31 -0
- data/lib/vagrant-chefconfig/env.rb +19 -0
- data/lib/vagrant-chefconfig/errors.rb +10 -0
- data/lib/vagrant-chefconfig/plugin.rb +59 -0
- data/lib/vagrant-chefconfig/version.rb +5 -0
- data/vagrant-chefconfig.gemspec +26 -0
- metadata +118 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 90f78ac71ef42cf38083250b82db72935520ccdb
|
4
|
+
data.tar.gz: 34c47dda0b741eead9d5805b86cab6c4ae783fb3
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 66fcd4941fdfd87c0d00ef9de9ae52e1e997b8c4e3f34fafe5f8e5a624873f75ef4d5aa8170b976a7bae9418a8a48f0d0687a4439b8ff5da27aeb31e9e36350d
|
7
|
+
data.tar.gz: f11577e2131f3214033a5a0777bc71d88a62cd4900f23b76b7e1e9f27c69579f6acb9a4ded5c5c7f09609e8752442431db779b8eb0a942a64d397921a7319a10
|
data/.gitignore
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
*.gem
|
2
|
+
*.rbc
|
3
|
+
.bundle
|
4
|
+
.config
|
5
|
+
.yardoc
|
6
|
+
Gemfile.lock
|
7
|
+
InstalledFiles
|
8
|
+
_yardoc
|
9
|
+
coverage
|
10
|
+
doc/
|
11
|
+
lib/bundler/man
|
12
|
+
pkg
|
13
|
+
rdoc
|
14
|
+
spec/reports
|
15
|
+
test/tmp
|
16
|
+
test/version_tmp
|
17
|
+
tmp
|
18
|
+
.idea/
|
19
|
+
.vagrant/
|
20
|
+
.vagrant-chefconfig/
|
21
|
+
*.sublime-*
|
data/.travis.yml
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
# Specify your gem's dependencies in vagrant-chefconfig.gemspec
|
4
|
+
gemspec
|
5
|
+
|
6
|
+
group :development do
|
7
|
+
# We depend on Vagrant for development, but we don't add it as a
|
8
|
+
# gem dependency because we expect to be installed within the
|
9
|
+
# Vagrant environment itself using `vagrant plugin`.
|
10
|
+
gem "vagrant", :github => 'mitchellh/vagrant'
|
11
|
+
end
|
12
|
+
|
13
|
+
# This group is read by Vagrant for plugin development
|
14
|
+
group :plugins do
|
15
|
+
gem "vagrant-chefconfig", path: "."
|
16
|
+
end
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
Copyright (c) 2014 Shawn Neal
|
2
|
+
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
you may not use this file except in compliance with the License.
|
5
|
+
You may obtain a copy of the License at
|
6
|
+
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
See the License for the specific language governing permissions and
|
13
|
+
limitations under the License.
|
data/README.md
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
# Vagrant-ChefConfig
|
2
|
+
|
3
|
+
This [Vagrant](http://www.vagrantup.com/) plugin allows you to automatically configure all your Chef client provisioner blocks from your host's knife.rb. Just install the plugin and use the chef-client provisioners in Vagrant. That's it.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
vagrant plugin install vagrant-chefconfig
|
8
|
+
|
9
|
+
## Usage
|
10
|
+
|
11
|
+
In your Vagrantfile use the plugin like so:
|
12
|
+
```ruby
|
13
|
+
Vagrant.configure('2') do |config|
|
14
|
+
config.vm.box = "precise64"
|
15
|
+
config.vm.provision :chef_client do |chef|
|
16
|
+
chef.node_name = 'vagrant-mydummytest'
|
17
|
+
chef.run_list = [ 'recipe[dummy::fail]' ]
|
18
|
+
end
|
19
|
+
end
|
20
|
+
```
|
21
|
+
|
22
|
+
The plugin will automatically configure the following Vagrant chef-client provisioner attributes from your knife.rb.
|
23
|
+
|
24
|
+
Vagrant chef-client attribute -> knife config attribute
|
25
|
+
--------------------------------------------------------
|
26
|
+
* `chef_server_url` - same
|
27
|
+
* `log_level` - same
|
28
|
+
* `validation_key_path` - maps to `validation_key`
|
29
|
+
* `validation_client_name` - same
|
30
|
+
* `environment` - maps to `vagrant_environment`, this is a non-standard knife config key.
|
31
|
+
* `encrypted_data_bag_secret_key_path` - maps to `encrypted_data_bag_secret`
|
32
|
+
|
33
|
+
Values specified directly in the Vagrantfile override any configured values found in your knife configuration file.
|
34
|
+
|
35
|
+
## Optional Configuration
|
36
|
+
|
37
|
+
By default the plugin will be enabled and the path to the knife.rb uses the [standard Knife configuration](http://docs.opscode.com/config_rb_knife.html) loading mechanism. You can override this behavior using the following optional plugin configuration options:
|
38
|
+
|
39
|
+
* chefconfig.enabled = false
|
40
|
+
* chefconfig.knife_config_path = '/my/nonstandard/path/knife.rb'
|
41
|
+
|
42
|
+
## Changelog
|
43
|
+
|
44
|
+
### 0.0.1
|
45
|
+
|
46
|
+
Initial release for Vagrant 1.5
|
47
|
+
|
48
|
+
# Authors
|
49
|
+
|
50
|
+
* Shawn Neal (<sneal@sneal.net>)
|
51
|
+
|
52
|
+
## Contributing
|
53
|
+
|
54
|
+
1. Fork it
|
55
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
56
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
57
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
58
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/Vagrantfile
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
# -*- mode: ruby -*-
|
2
|
+
# vi: set ft=ruby :
|
3
|
+
|
4
|
+
Vagrant.configure('2') do |config|
|
5
|
+
config.vm.box = "opscode_ubuntu-12.04_chef-11.2.0"
|
6
|
+
config.vm.provision :chef_client do |chef|
|
7
|
+
chef.node_name = 'vagrant_chefconfig_test_vm'
|
8
|
+
chef.run_list = [ 'apt' ]
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
begin
|
2
|
+
require "vagrant"
|
3
|
+
rescue LoadError
|
4
|
+
raise "This plugin must run within Vagrant."
|
5
|
+
end
|
6
|
+
|
7
|
+
require 'vagrant-chefconfig/version'
|
8
|
+
require 'vagrant-chefconfig/errors'
|
9
|
+
|
10
|
+
module Vagrant
|
11
|
+
module ChefConfig
|
12
|
+
require_relative 'vagrant-chefconfig/config'
|
13
|
+
require_relative 'vagrant-chefconfig/action'
|
14
|
+
require_relative 'vagrant-chefconfig/env'
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
require 'vagrant-chefconfig/plugin'
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Vagrant
|
2
|
+
module ChefConfig
|
3
|
+
module Action
|
4
|
+
require_relative 'action/load_chef_config'
|
5
|
+
|
6
|
+
def self.load_chef_config
|
7
|
+
::Vagrant::Action::Builder.new.tap do |b|
|
8
|
+
b.use Vagrant::ChefConfig::Action::LoadChefConfig
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require_relative '../chef_client_configurator'
|
2
|
+
|
3
|
+
module Vagrant
|
4
|
+
module ChefConfig
|
5
|
+
module Action
|
6
|
+
class LoadChefConfig
|
7
|
+
|
8
|
+
def initialize(app, env)
|
9
|
+
@app = app
|
10
|
+
end
|
11
|
+
|
12
|
+
def call(env)
|
13
|
+
if env[:machine].config.chefconfig.enabled
|
14
|
+
ChefClientConfigurator.new(env).apply_knife_config()
|
15
|
+
end
|
16
|
+
@app.call(env)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
require 'log4r'
|
2
|
+
require 'chef'
|
3
|
+
require 'chef/knife'
|
4
|
+
|
5
|
+
module Vagrant
|
6
|
+
module ChefConfig
|
7
|
+
class ChefClientConfigurator
|
8
|
+
|
9
|
+
def initialize(env)
|
10
|
+
@logger = Log4r::Logger.new("vagrant_chefconfig::chefclientconfigurator")
|
11
|
+
@env = env
|
12
|
+
end
|
13
|
+
|
14
|
+
def apply_knife_config()
|
15
|
+
load_knife_config()
|
16
|
+
|
17
|
+
chef_client_provisioners.each do |chef_client_provisioner|
|
18
|
+
chef_config = chef_client_provisioner.config
|
19
|
+
|
20
|
+
set_if_default(chef_config, :chef_server_url, :chef_server_url)
|
21
|
+
set_if_default(chef_config, :log_level, :log_level)
|
22
|
+
set_if_default(chef_config, :validation_key_path, :validation_key)
|
23
|
+
set_if_default(chef_config, :validation_client_name, :validation_client_name)
|
24
|
+
set_if_default(chef_config, :environment, :vagrant_environment)
|
25
|
+
set_if_default(chef_config, :encrypted_data_bag_secret_key_path, :encrypted_data_bag_secret)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
private
|
31
|
+
|
32
|
+
def set_if_default(chef_config, config_prop_sym, chef_prop_sym)
|
33
|
+
config_val = chef_config.send(config_prop_sym)
|
34
|
+
|
35
|
+
@logger.debug("Vagrantfile config val #{config_prop_sym} = #{config_val}")
|
36
|
+
@logger.debug("Knife config val #{config_prop_sym} = #{Chef::Config[chef_prop_sym]}")
|
37
|
+
|
38
|
+
if is_default_value(config_prop_sym, config_val)
|
39
|
+
@logger.debug("Overwriting '#{config_prop_sym}' in Vagrantfile chef-client " +
|
40
|
+
"provisioner with '#{Chef::Config[chef_prop_sym]}'")
|
41
|
+
chef_config.send("#{config_prop_sym}=", Chef::Config[chef_prop_sym])
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
def is_default_value(config_prop_sym, config_val)
|
46
|
+
case config_prop_sym
|
47
|
+
when :validation_client_name
|
48
|
+
return config_val == 'chef-validator'
|
49
|
+
when :client_key_path
|
50
|
+
return config_val == '/etc/chef/client.pem'
|
51
|
+
else
|
52
|
+
return config_val.nil?
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def chef_client_provisioners()
|
57
|
+
@env[:machine].config.vm.provisioners.select { |prov| prov.name == :chef_client }
|
58
|
+
end
|
59
|
+
|
60
|
+
def load_knife_config()
|
61
|
+
knife_config_path = locate_knife_config_file()
|
62
|
+
@logger.debug("Using knife config from '#{knife_config_path}'")
|
63
|
+
Chef::Config.from_file(knife_config_path)
|
64
|
+
end
|
65
|
+
|
66
|
+
def locate_knife_config_file()
|
67
|
+
# If the Vagrantfile directly sets the knife.rb path use it, otherwise let
|
68
|
+
# knife find its configuration file
|
69
|
+
knife_config_path = plugin_config().knife_config_path
|
70
|
+
knife_config_path ? knife_config_path : Chef::Knife.locate_config_file()
|
71
|
+
end
|
72
|
+
|
73
|
+
def plugin_config()
|
74
|
+
@env[:machine].config.chefconfig
|
75
|
+
end
|
76
|
+
|
77
|
+
end #ChefClientConfigurator
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Vagrant
|
2
|
+
module ChefConfig
|
3
|
+
class Config < ::Vagrant.plugin('2', :config)
|
4
|
+
attr_accessor :enabled
|
5
|
+
attr_accessor :knife_config_path
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
super
|
9
|
+
@enabled = UNSET_VALUE
|
10
|
+
@knife_config_path = UNSET_VALUE
|
11
|
+
end
|
12
|
+
|
13
|
+
def finalize!
|
14
|
+
@enabled = true if @enabled == UNSET_VALUE
|
15
|
+
@knife_config_path = nil if @knife_config_path == UNSET_VALUE
|
16
|
+
end
|
17
|
+
|
18
|
+
def validate(machine)
|
19
|
+
errors =[]
|
20
|
+
|
21
|
+
if @enabled
|
22
|
+
if @knife_config_path && !File.exists?(@knife_config_path)
|
23
|
+
errors << "chefconfig.knife_config_path file '#{@knife_config_path}' not found"
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
{ "chefconfig" => errors }
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Vagrant
|
2
|
+
module ChefConfig
|
3
|
+
class Env
|
4
|
+
attr_accessor :ui
|
5
|
+
|
6
|
+
def initialize
|
7
|
+
vagrant_version = Gem::Version.new(::Vagrant::VERSION)
|
8
|
+
if vagrant_version >= Gem::Version.new("1.5")
|
9
|
+
@ui = ::Vagrant::UI::Colored.new
|
10
|
+
@ui.opts[:target] = 'ChefConfig'
|
11
|
+
elsif vagrant_version >= Gem::Version.new("1.2")
|
12
|
+
@ui = ::Vagrant::UI::Colored.new.scope('ChefConfig')
|
13
|
+
else
|
14
|
+
@ui = ::Vagrant::UI::Colored.new('ChefConfig')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
module Vagrant
|
2
|
+
module ChefConfig
|
3
|
+
class Plugin < Vagrant.plugin('2')
|
4
|
+
name "vagrant-chefconfig"
|
5
|
+
description <<-DESC
|
6
|
+
Auto-load knife configuration data on Vagrant startup
|
7
|
+
DESC
|
8
|
+
|
9
|
+
|
10
|
+
action_hook(:vagrant_chefconfig_validate) do |hook|
|
11
|
+
hook.before(
|
12
|
+
::Vagrant::Action::Builtin::ConfigValidate,
|
13
|
+
Vagrant::ChefConfig::Action.load_chef_config)
|
14
|
+
end
|
15
|
+
|
16
|
+
action_hook(:vagrant_chefconfig_provision) do |hook|
|
17
|
+
hook.before(
|
18
|
+
::Vagrant::Action::Builtin::Provision,
|
19
|
+
Vagrant::ChefConfig::Action.load_chef_config)
|
20
|
+
end
|
21
|
+
|
22
|
+
config("chefconfig") do
|
23
|
+
Config
|
24
|
+
end
|
25
|
+
|
26
|
+
# This sets up our log level to be whatever VAGRANT_LOG is.
|
27
|
+
def self.setup_logging
|
28
|
+
require 'log4r'
|
29
|
+
|
30
|
+
level = nil
|
31
|
+
begin
|
32
|
+
level = Log4r.const_get(ENV["VAGRANT_LOG"].upcase)
|
33
|
+
rescue NameError
|
34
|
+
# This means that the logging constant wasn't found,
|
35
|
+
# which is fine. We just keep `level` as `nil`. But
|
36
|
+
# we tell the user.
|
37
|
+
level = nil
|
38
|
+
end
|
39
|
+
|
40
|
+
# Some constants, such as "true" resolve to booleans, so the
|
41
|
+
# above error checking doesn't catch it. This will check to make
|
42
|
+
# sure that the log level is an integer, as Log4r requires.
|
43
|
+
level = nil if !level.is_a?(Integer)
|
44
|
+
|
45
|
+
# Set the logging level on all "vagrant" namespaced
|
46
|
+
# logs as long as we have a valid level.
|
47
|
+
if level
|
48
|
+
logger = Log4r::Logger.new("vagrant_chefconfig")
|
49
|
+
logger.outputters = Log4r::Outputter.stderr
|
50
|
+
logger.level = level
|
51
|
+
logger = nil
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
Vagrant::ChefConfig::Plugin.setup_logging()
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'vagrant-chefconfig/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |gem|
|
7
|
+
gem.name = "vagrant-chefconfig"
|
8
|
+
gem.version = Vagrant::ChefConfig::VERSION
|
9
|
+
gem.authors = ["Shawn Neal"]
|
10
|
+
gem.email = ["sneal@sneal.net"]
|
11
|
+
gem.description = %q{Load Chef gem client config from knife.rb}
|
12
|
+
gem.summary = %q{Duplicating Chef client configuration is less than ideal, lets reuse our knife.rb configuration data}
|
13
|
+
gem.homepage = "https://github.com/sneal/vagrant-chefconfig"
|
14
|
+
gem.license = 'Apache2'
|
15
|
+
|
16
|
+
gem.files = `git ls-files`.split($/)
|
17
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
18
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
19
|
+
gem.require_paths = ["lib"]
|
20
|
+
|
21
|
+
gem.add_dependency "chef", "~> 11.8.2"
|
22
|
+
|
23
|
+
gem.add_development_dependency "rake"
|
24
|
+
gem.add_development_dependency "rspec"
|
25
|
+
gem.add_development_dependency "bundler", ">= 1.3"
|
26
|
+
end
|
metadata
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: vagrant-chefconfig
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Shawn Neal
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-03-18 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: chef
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 11.8.2
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 11.8.2
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bundler
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.3'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '1.3'
|
69
|
+
description: Load Chef gem client config from knife.rb
|
70
|
+
email:
|
71
|
+
- sneal@sneal.net
|
72
|
+
executables: []
|
73
|
+
extensions: []
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- .gitignore
|
77
|
+
- .travis.yml
|
78
|
+
- Gemfile
|
79
|
+
- LICENSE.txt
|
80
|
+
- README.md
|
81
|
+
- Rakefile
|
82
|
+
- Vagrantfile
|
83
|
+
- lib/vagrant-chefconfig.rb
|
84
|
+
- lib/vagrant-chefconfig/action.rb
|
85
|
+
- lib/vagrant-chefconfig/action/load_chef_config.rb
|
86
|
+
- lib/vagrant-chefconfig/chef_client_configurator.rb
|
87
|
+
- lib/vagrant-chefconfig/config.rb
|
88
|
+
- lib/vagrant-chefconfig/env.rb
|
89
|
+
- lib/vagrant-chefconfig/errors.rb
|
90
|
+
- lib/vagrant-chefconfig/plugin.rb
|
91
|
+
- lib/vagrant-chefconfig/version.rb
|
92
|
+
- vagrant-chefconfig.gemspec
|
93
|
+
homepage: https://github.com/sneal/vagrant-chefconfig
|
94
|
+
licenses:
|
95
|
+
- Apache2
|
96
|
+
metadata: {}
|
97
|
+
post_install_message:
|
98
|
+
rdoc_options: []
|
99
|
+
require_paths:
|
100
|
+
- lib
|
101
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - '>='
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '0'
|
106
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
requirements: []
|
112
|
+
rubyforge_project:
|
113
|
+
rubygems_version: 2.0.14
|
114
|
+
signing_key:
|
115
|
+
specification_version: 4
|
116
|
+
summary: Duplicating Chef client configuration is less than ideal, lets reuse our
|
117
|
+
knife.rb configuration data
|
118
|
+
test_files: []
|