import os import commons import random install_phase = commons.POST_INSTALL enabled = True def execute(name, ks_config, config, root): if ks_config: if "hostname" in ks_config: config['hostname'] = ks_config["hostname"].strip(" ") if "hostname" not in config or config['hostname'] == "": random_id = '%12x' % random.randrange(16**12) config['hostname'] = "photon-" + random_id.strip() hostname = config['hostname'] hostname_file = os.path.join(root, 'etc/hostname') hosts_file = os.path.join(root, 'etc/hosts') with open(hostname_file, 'wb') as outfile: outfile.write(hostname) commons.replace_string_in_file(hosts_file, r'127\.0\.0\.1\s+localhost\s*\Z', '127.0.0.1\tlocalhost\n127.0.0.1\t' + hostname)