summaryrefslogtreecommitdiff
path: root/cloudinit/config/cc_update_etc_hosts.py
diff options
context:
space:
mode:
authorScott Moser <smoser@brickies.net>2016-10-04 16:44:29 -0400
committerScott Moser <smoser@brickies.net>2016-10-04 16:44:29 -0400
commitc83e19dc07b284f008120fb0c72439c5f91042ae (patch)
treea368cbb9170b2da6ffb623802580381b12bae4be /cloudinit/config/cc_update_etc_hosts.py
parent1bf130a7e1157d83f073131beaa92d3169255229 (diff)
parent94fd35eeb3f53bc82fb9ddcad60c1e605890fd53 (diff)
downloadvyos-cloud-init-c83e19dc07b284f008120fb0c72439c5f91042ae.tar.gz
vyos-cloud-init-c83e19dc07b284f008120fb0c72439c5f91042ae.zip
merge from master at 0.7.8-14-g94fd35e
Diffstat (limited to 'cloudinit/config/cc_update_etc_hosts.py')
-rw-r--r--cloudinit/config/cc_update_etc_hosts.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/cloudinit/config/cc_update_etc_hosts.py b/cloudinit/config/cc_update_etc_hosts.py
index 15703efe..3fcb2652 100644
--- a/cloudinit/config/cc_update_etc_hosts.py
+++ b/cloudinit/config/cc_update_etc_hosts.py
@@ -18,6 +18,49 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+"""
+Update Etc Hosts
+----------------
+**Summary:** update ``/etc/hosts``
+
+This module will update the contents of ``/etc/hosts`` based on the
+hostname/fqdn specified in config. Management of ``/etc/hosts`` is controlled
+using ``manage_etc_hosts``. If this is set to false, cloud-init will not manage
+``/etc/hosts`` at all. This is the default behavior.
+
+If set to ``true`` or ``template``, cloud-init will generate ``/etc/hosts``
+using the template located in ``/etc/cloud/templates/hosts.tmpl``. In the
+``/etc/cloud/templates/hosts.tmpl`` template, the strings ``$hostname`` and
+``$fqdn`` will be replaced with the hostname and fqdn respectively.
+
+If ``manage_etc_hosts`` is set to ``localhost``, then cloud-init will not
+rewrite ``/etc/hosts`` entirely, but rather will ensure that a entry for the
+fqdn with ip ``127.0.1.1`` is present in ``/etc/hosts`` (i.e.
+``ping <hostname>`` will ping ``127.0.1.1``).
+
+.. note::
+ if ``manage_etc_hosts`` is set ``true`` or ``template``, the contents
+ of ``/etc/hosts`` will be updated every boot. to make any changes to
+ ``/etc/hosts`` persistant they must be made in
+ ``/etc/cloud/templates/hosts.tmpl``
+
+.. note::
+ for instructions on specifying hostname and fqdn, see documentation for
+ ``cc_set_hostname``
+
+**Internal name:** ``cc_update_etc_hosts``
+
+**Module frequency:** per always
+
+**Supported distros:** all
+
+**Config keys**::
+
+ manage_etc_hosts: <true/"template"/false/"localhost">
+ fqdn: <fqdn>
+ hostname: <fqdn/hostname>
+"""
+
from cloudinit import templater
from cloudinit import util