c10l / Vagrant Butcher
Licence: mit
Delete Chef client and node when destroying Vagrant VM
Stars: ✭ 127
Programming Languages
ruby
36898 projects - #4 most used programming language
Projects that are alternatives of or similar to Vagrant Butcher
nustuff
Useful scripting and Linux configuration examples
Stars: ✭ 39 (-69.29%)
Mutual labels: vagrant, chef
Packer
Packer helpers and templates for Docker, IIS, SQL Server and Visual Studio on Windows and Ubuntu
Stars: ✭ 242 (+90.55%)
Mutual labels: chef, vagrant
Macos Cookbook
A Chef cookbook used to provision macOS
Stars: ✭ 183 (+44.09%)
Mutual labels: chef, vagrant
Vagrant Lamp
My default LAMP development stack for Vagrant
Stars: ✭ 765 (+502.36%)
Mutual labels: chef, vagrant
vagrant
Development repository for the vagrant cookbook
Stars: ✭ 54 (-57.48%)
Mutual labels: vagrant, chef
Chef Bcpc
Bloomberg Clustered Private Cloud distribution
Stars: ✭ 205 (+61.42%)
Mutual labels: chef, vagrant
sitecore-packer
Packer templates for Sitecore development with IIS, SOLR and SQL Server on Windows
Stars: ✭ 19 (-85.04%)
Mutual labels: vagrant, chef
Pentest Env
Pentest environment deployer (kali linux + targets) using vagrant and chef.
Stars: ✭ 610 (+380.31%)
Mutual labels: chef, vagrant
Workstations
Vagrant virtual workstations and development environments with Visual Studio, Docker, IIS and SQL Server on Windows for .NET development
Stars: ✭ 45 (-64.57%)
Mutual labels: chef, vagrant
Powershell
Development repository for the powershell cookbook
Stars: ✭ 104 (-18.11%)
Mutual labels: chef
Rhcsa8env
This is a RHCSA8 study environment built with Vagrant/Ansible
Stars: ✭ 108 (-14.96%)
Mutual labels: vagrant
Serverfarmer
Manage multiple servers with different operating systems, configurations, requirements etc. for many separate customers in an outsourcing model.
Stars: ✭ 122 (-3.94%)
Mutual labels: chef
Vagrant Golang
A very easy to use golang environment for use with vagrant.
Stars: ✭ 104 (-18.11%)
Mutual labels: vagrant
Ruby build
Development repository for the ruby_build cookbook
Stars: ✭ 124 (-2.36%)
Mutual labels: chef
Vagrant::Butcher
If you're using Vagrant with the Chef-Client provisioner it creates a client and a node on the Chef server when the VM spins up.
This plugin will automatically get rid of that cruft for you when you destroy the VM.
Installation
Install this plugin using the Vagrant command line:
$ vagrant plugin install vagrant-butcher
Usage
The plugin is loaded automatically once installed.
Configuration
For most cases, the plugin shouldn't need any configuration. However, there are a few options that can be set. The options are all set in the Vagrantfile
in the format:
Vagrant.configure("2") do |config|
...
config.butcher.<option> = <value>
...
end
Option | Default Value | Purpose |
---|---|---|
enabled |
true |
Defines whether node and client should be deleted |
guest_key_path |
'/etc/chef/client.pem' |
Location of the client key in the guest VM |
verify_ssl |
true |
If set to false, does not verify Chef's host key |
proxy |
nil |
Inform the URL of a proxy server between your host and the Chef Server |
client_name |
Guest's node name | Inform a client name to override the plugin's default behaviour |
client_key |
Guest's client key | Point to a local .pem key file that matches the client_name
|
Caveats
- So far this has only been tested and confirmed to run with the VirtualBox and Rackspace provisioners. It should work with others, but if you run into issues please file a bug.
- The default
.
->/vagrant
shared folder should be mounted. -
verify_ssl
is enabled by default. You might want to disable that if, for example, you run your own Chef server with a self-signed cert. Check here to see how.
Changelog
2.3.0
- Fix logger spam caused by Hashie used in Ridley (see issue)
2.2.0
- Removed compatibility with Vagrant < 1.5
- Fixes an issue with recent Vagrant versions where the butcher sequence would never run
- Sets default
guest_key_path
depending on OS - Tested and confirmed working on Windows and Linux
2.0.0
- No more option to point to
knife.rb
. Data is retrieved from theVagrantfile
'schef_client
provisioner -
chef
is no longer a requirement (no morejson
conflicts) - Configuration items were added to point to custom client name and key
- It's possible to disable the plugin by setting the
enabled
flag tofalse
in the Vagrantfile.
See Configuration for all possible customisations.
1.1.0
- :auto was added as an optional value for knife_config_file
1.0.1
- Support for Vagrant 1.2
1.0.0
- Support for Vagrant 1.x (it's been tested on 1.1.4, but should work on previous minor releases) -- if you're using a pre-1.0 Vagrant release, stick to vagrant-butcher 0.0.3.
- Configuration change.
-
Installation via
vagrant plugin
only. - Provider-independent. Read more
0.0.3
- Uses chef.node_name if set. Otherwise, fall back to vm.host_name (as before), or vm.box. -- Kudos to pikesley.
Authors
- Cassiano Leal ([email protected])
- Daniel Searles (https://github.com/squaresurf)
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].