cdist-type__jail(7)
===================
Jake Guffey <jake.guffey--@--eprotex.com>


NAME
----
cdist-type__jail - Manage FreeBSD jails


DESCRIPTION
-----------
This type is used on FreeBSD to manage jails.


REQUIRED PARAMETERS
-------------------
state::
   Either "present" or "absent."

jailbase::
   The location of the .tgz archive containing the base fs for your jails.


OPTIONAL PARAMETERS
-------------------
name::
   The name of the jail. Default is to use the object_id as the jail name.

started::
   Either "true" or "false." Defaults to true.

ip::
   The ifconfig style IP/netmask combination to use for the jail guest. If
   the state parameter is "present," this parameter is required.

hostname::
   The FQDN to use for the jail guest. Defaults to the name parameter.

interface::
   The name of the physical interface on the jail server to bind the jail to.
   Defaults to the first interface found in the output of ifconfig -l.

devfs-enable::
   Whether to allow devfs mounting within the jail. Must be "true" or "false."
   Defaults to true.

devfs-ruleset::
   The name of the devfs ruleset to associate with the jail. Defaults to
   "jailrules." This ruleset must be copied to the server via another type.
   To use this option, devfs-enable must be "true."

onboot::
   Whether to add the jail to rc.conf's jail_list variable. Must be either
   "true" or "false." Defaults to false.

jaildir::
   The location on the remote server to use for hosting jail filesystems.
   Defaults to /usr/jail.


CAVEATS
-------
This type does not currently support modification of jail options. If, for
example a jail needs to have its IP address or netmask changed, the jail must
be removed then re-added with the correct IP address/netmask or the appropriate
line (jail_<name>_ip="...") modified within rc.conf through some alternate
means.

EXAMPLES
--------

--------------------------------------------------------------------------------
# Create a jail called www
__jail www --state present --ip "192.168.1.2" --jailbase /my/jail/base.tgz

# Remove the jail called www
__jail www --state absent --jailbase /my/jail/base.tgz

# Ensure that the jail called www is started
__jail www --state present --started true \
   --ip "192.168.1.2 netmask 255.255.255.0" \
   --jailbase /my/jail/base.tgz

# Use the name variable explicitly
__jail thisjail --state present --name www \
   --ip "192.168.1.2" \
   --jailbase /my/jail/base.tgz

# Go nuts
__jail lotsofoptions --state present --name testjail --started true \
   --ip "192.168.1.100 netmask 255.255.255.0" \
   --hostname "testjail.example.com" --interface "em0" \
   --onboot yes --jailbase /my/jail/base.tgz --jaildir /jails
--------------------------------------------------------------------------------


SEE ALSO
--------
- cdist-type(7)


COPYING
-------
Copyright \(C) 2012 Jake Guffey. Free use of this software is
granted under the terms of the GNU General Public License version 3 (GPLv3).
