chef/cookbooks/hostname/README.md
2017-06-16 11:25:49 +02:00

53 lines
2.1 KiB
Markdown

# hostname cookbook
[![Build Status](https://travis-ci.org/3ofcoins/chef-cookbook-hostname.svg?branch=master)](https://travis-ci.org/3ofcoins/chef-cookbook-hostname)
[![Chef cookbook](https://img.shields.io/cookbook/v/hostname.svg)](https://supermarket.chef.io/cookbooks/hostname)
## Description
Sets hostname and FQDN of the node. The latest code is hosted at
https://github.com/3ofcoins/chef-cookbook-hostname
### Important
Setting hostname on FQDN is not (and won't be) supported. Unfortunately, using dots in the hostname can cause
[inconsistent results for any system that consumes DNS](http://serverfault.com/questions/229331/can-i-have-dots-in-a-hostname)
and [is not allowed by RFC952](http://tools.ietf.org/html/rfc952). If a user
needs additional info in their shell prompt, they can change PS1 in etc/profile
to include the FQDN together with any information they find useful (such as
the customer, the environment, etc).
## Attributes
- `node['set_fqdn']` - FQDN to set.
The asterisk character will be replaced with `node.name`. This way,
you can add this to base role:
```ruby
default_attributes :set_fqdn => '*.project-domain.com'
```
and have node set its FQDN and hostname based on its chef node name
(which is provided on `chef-client` first run's command line).
- `node['hostname_cookbook']['hostsfile_ip']` -- IP used in
`/etc/hosts` to correctly set FQDN (default: `127.0.1.1`)
- `node['hostname_cookbook']['hostsfile_aliases']` -- list of aliases used in
`/etc/hosts` for the ip set above (default: [`hostname`])
- `node['hostname_cookbook']['hostsfile_include_hostname_in_aliases']` -- whether to include the hostname
at the end of the aliases list above (default: true)
- `node['hostname_cookbook']['append_hostsfile_ip']` -- Set to `false` to
prevent an entry for the node's hostname from being appended in `/etc/hosts` (default: `true`)
## Recipes
* `hostname::default` -- will set node's FQDN to value of `set_fqdn` attribute,
and hostname to its host part (up to first dot).
* `hostname::vmware` -- sets hostname automatically using vmtoolsd.
You do not need to set `node["set_fqdn"]`.
## Author
Author: Maciej Pasternacki maciej@3ofcoins.net