hostsfile
provides an LWRP for managing your hosts file using Chef.
At this time, you must have a Unix-based machine. This could easily be adapted for Windows machines. Please submit a Pull Request if you wish to add Windows support.
Attribute | Description | Example | Default |
---|---|---|---|
ip_address | (name attribute) the IP address for the entry | 1.2.3.4 | |
hostname | (required) the hostname associated with the entry | example.com | |
aliases | array of aliases for the entry | ['www.example.com'] | [] |
comment | a comment to append to the end of the entry | 'interal DNS server' | nil |
This LWRP comes equipped with 4 actions:
Creates a new hosts file entry. If an entry already exists, it will be overwritten by this one.
hostsfile_entry '1.2.3.4' do
hostname 'example.com'
action :create
end
This will create an entry like this:
1.2.3.4 example.com
Create a new hosts file entry, only if one does not already exist for the given IP address. If one exists, this does nothing.
hostsfile_entry '1.2.3.4' do
hostname 'example.com'
action :create_if_missing
end
Create a new hosts file entry if not found. If exists appends given hostname to aliases.
hostsfile_entry '1.2.3.4' do
hostname 'www.example.com'
action :create_or_update
end
Updates the given hosts file entry. Does nothing if the entry does not exist.
hostsfile_entry '1.2.3.4' do
hostname 'example.com'
comment 'Update by Chef'
action :update
end
This will create an entry like this:
1.2.3.4 example # Updated by Chef
Removes an entry from the hosts file. Does nothing if the entry does not exist.
hostsfile_entry '1.2.3.4' do
action :remove
end
This will remove the entry for 1.2.3.4
.
Download or install this cookbook from the community site:
$ knife cookbook site install hostsfile
Then, simply include this recipe and you'll be granted access to this LWPR:
# your_recipe.rb
include_recipe 'hostsfile'
- Fork the project
- Create a feature branch corresponding to you change
- Commit and test thoroughly
- Create a Pull Request on github
- ensure you add a detailed description of your changes
Authors: Seth Vargo (@sethvargo)
Copyright 2012, CustomInk, LLC