diff --git a/cloudinit/config/cc_update_etc_hosts.py b/cloudinit/config/cc_update_etc_hosts.py index 4d75000..d4c1954 100644 --- a/cloudinit/config/cc_update_etc_hosts.py +++ b/cloudinit/config/cc_update_etc_hosts.py @@ -20,6 +20,7 @@ from cloudinit import templater from cloudinit import util +from cloudinit import netinfo from cloudinit.settings import PER_ALWAYS @@ -43,8 +44,14 @@ " found for distro %s") % (cloud.distro.name)) out_fn = cloud.paths.join(False, '/etc/hosts') - templater.render_to_file(tpl_fn_name, out_fn, - {'hostname': hostname, 'fqdn': fqdn}) + params = {'hostname': hostname, 'fqdn': fqdn} + + # Add network device info to params so they can be used in the template + devs = netinfo.netdev_info() + for dev, info in devs.items(): + params['dev_' + dev] = info['addr'] + + templater.render_to_file(tpl_fn_name, out_fn, params) elif manage_hosts == "localhost": (hostname, fqdn) = util.get_hostname_fqdn(cfg, cloud)