🔐 Sid Gifari File Manager Pro
v8.0.5 | 2026-08-07 10:14:14 | PHP 8.2.32
📂
/ (Root)
/
usr
/
lib
/
python3.6
/
site-packages
/
cloudinit
/
config
/
__pycache__
📍 /usr/lib/python3.6/site-packages/cloudinit/config/__pycache__
🔄 Refresh
✏️
Editing: cc_update_etc_hosts.cpython-36.pyc
Read Only
3 \�me� � @ s� U d Z ddlZddlmZ ddlmZmZ ddlmZ ddl m Z ddlmZm Z ddlmZ d Zd gZddd eeed�ed�ed�gedgd�Zee e�Z eje�Zee eedd�dd�ZdS )z@Update Etc Hosts: Update the hosts file (usually ``/etc/hosts``)� N)�dedent)� templater�util)�Cloud)�Config)� MetaSchema�get_meta_doc)� PER_ALWAYSa� This module will update the contents of the local hosts database (hosts file; usually ``/etc/hosts``) based on the hostname/fqdn specified in config. Management of the hosts file is controlled using ``manage_etc_hosts``. If this is set to false, cloud-init will not manage the hosts file at all. This is the default behavior. If set to ``true``, cloud-init will generate the hosts file 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 the hosts file entirely, but rather will ensure that a entry for the fqdn with a distribution dependent ip is present (i.e. ``ping <hostname>`` will ping ``127.0.0.1`` or ``127.0.1.1`` or other ip). .. note:: if ``manage_etc_hosts`` is set ``true``, the contents of the hosts file will be updated every boot. To make any changes to the hosts file persistent they must be made in ``/etc/cloud/templates/hosts.tmpl`` .. note:: for instructions on specifying hostname and fqdn, see documentation for ``cc_set_hostname`` �allZcc_update_etc_hostszUpdate Etc Hostsz.Update the hosts file (usually ``/etc/hosts``)z� # Do not update or manage /etc/hosts at all. This is the default behavior. # # Whatever is present at instance boot time will be present after boot. # User changes will not be overwritten. manage_etc_hosts: false aT # Manage /etc/hosts with cloud-init. # On every boot, /etc/hosts will be re-written from # ``/etc/cloud/templates/hosts.tmpl``. # # The strings '$hostname' and '$fqdn' are replaced in the template # with the appropriate values either from the config-config ``fqdn`` or # ``hostname`` if provided. When absent, the cloud metadata will be # checked for ``local-hostname` which can be split into <hostname>.<fqdn>. # # To make modifications persistent across a reboot, you must modify # ``/etc/cloud/templates/hosts.tmpl``. manage_etc_hosts: true a! # Update /etc/hosts every boot providing a "localhost" 127.0.1.1 entry # with the latest hostname and fqdn as provided by either IMDS or # cloud-config. # All other entries will be left as is. # 'ping `hostname`' will ping 127.0.1.1 manage_etc_hosts: localhost �manage_etc_hosts)�id�name�title�description�distrosZexamplesZ frequencyZactivate_by_schema_keys)r �cfg�cloud�args�returnc C s� t j|dd�}|jj}t j|dgd�r�|dkr>t jdddd� t j||�\}}}|sbtjd � d S |j d |jj �} | s�td|jj ��tj | |||d�� nV|d kr�t j||�\}}}|s�tjd � d S tjd|� |jj||� ntjd|| � d S )Nr F�template)Zaddonsz+Value 'template' for key 'manage_etc_hosts'z22.2zUse 'true' instead.)Z deprecatedZdeprecated_versionZ extra_messagez<Option 'manage_etc_hosts' was set, but no hostname was foundzhosts.%sz.No hosts template could be found for distro %s)�hostname�fqdnZ localhostzManaging localhost in %szPConfiguration option 'manage_etc_hosts' is not set, not managing %s in module %s)r Zget_cfg_option_strZdistro�hosts_fnZtranslate_boolZ deprecateZget_hostname_fqdn�LOGZwarningZget_template_filenameZosfamily�RuntimeErrorr Zrender_to_file�debugZupdate_etc_hosts) r r r r Zmanage_hostsr r r �_Ztpl_fn_name� r �)/usr/lib/python3.6/cc_update_etc_hosts.py�handlee sB r )�__doc__Zlogging�textwrapr Z cloudinitr r Zcloudinit.cloudr Zcloudinit.configr Zcloudinit.config.schemar r Zcloudinit.settingsr ZMODULE_DESCRIPTIONr �metaZ getLogger�__name__r �str�listr r r r r �<module> s2
💾 Save Changes
❌ Cancel