def test_write_etc_hosts_suse_template(self):
     cfg = {
         'manage_etc_hosts': 'template',
         'hostname': 'cloud-init.test.us'
     }
     shutil.copytree('templates', '%s/etc/cloud/templates' % self.tmp)
     distro = self._fetch_distro('sles')
     paths = helpers.Paths({})
     paths.template_tpl = '%s' % self.tmp + '/etc/cloud/templates/%s.tmpl'
     ds = None
     cc = cloud.Cloud(ds, paths, {}, distro, None)
     self.patchUtils(self.tmp)
     cc_update_etc_hosts.handle('test', cfg, cc, LOG, [])
     contents = util.load_file('%s/etc/hosts' % self.tmp)
     if '127.0.1.1 cloud-init.test.us cloud-init' not in contents:
         self.assertIsNone('No entry for 127.0.1.1 in etc/hosts')
     if '::1 cloud-init.test.us cloud-init' not in contents:
         self.assertIsNone('No entry for 127.0.0.1 in etc/hosts')
 def test_write_etc_hosts_suse_template(self):
     cfg = {
         'manage_etc_hosts': 'template',
         'hostname': 'cloud-init.test.us'
     }
     shutil.copytree('templates', '%s/etc/cloud/templates' % self.tmp)
     distro = self._fetch_distro('sles')
     paths = helpers.Paths({})
     paths.template_tpl = '%s' % self.tmp + '/etc/cloud/templates/%s.tmpl'
     ds = None
     cc = cloud.Cloud(ds, paths, {}, distro, None)
     self.patchUtils(self.tmp)
     cc_update_etc_hosts.handle('test', cfg, cc, LOG, [])
     contents = util.load_file('%s/etc/hosts' % self.tmp)
     if '127.0.0.1 cloud-init.test.us cloud-init' not in contents:
         self.assertIsNone('No entry for 127.0.0.1 in etc/hosts')
     if '::1 cloud-init.test.us cloud-init' not in contents:
         self.assertIsNone('No entry for 127.0.0.1 in etc/hosts')
 def test_write_etc_hosts_suse_template(self):
     cfg = {
         "manage_etc_hosts": "template",
         "hostname": "cloud-init.test.us",
     }
     shutil.copytree(
         t_help.cloud_init_project_dir("templates"),
         "%s/etc/cloud/templates" % self.tmp,
     )
     distro = self._fetch_distro("sles")
     paths = helpers.Paths({})
     paths.template_tpl = "%s" % self.tmp + "/etc/cloud/templates/%s.tmpl"
     ds = None
     cc = cloud.Cloud(ds, paths, {}, distro, None)
     self.patchUtils(self.tmp)
     cc_update_etc_hosts.handle("test", cfg, cc, LOG, [])
     contents = util.load_file("%s/etc/hosts" % self.tmp)
     if "127.0.1.1 cloud-init.test.us cloud-init" not in contents:
         self.assertIsNone("No entry for 127.0.1.1 in etc/hosts")
     if "::1 cloud-init.test.us cloud-init" not in contents:
         self.assertIsNone("No entry for 127.0.0.1 in etc/hosts")
 def test_write_etc_hosts_suse_localhost(self):
     cfg = {
         'manage_etc_hosts': 'localhost',
         'hostname': 'cloud-init.test.us'
     }
     os.makedirs('%s/etc/' % self.tmp)
     hosts_content = '192.168.1.1 blah.blah.us blah\n'
     fout = open('%s/etc/hosts' % self.tmp, 'w')
     fout.write(hosts_content)
     fout.close()
     distro = self._fetch_distro('sles')
     distro.hosts_fn = '%s/etc/hosts' % self.tmp
     paths = helpers.Paths({})
     ds = None
     cc = cloud.Cloud(ds, paths, {}, distro, None)
     self.patchUtils(self.tmp)
     cc_update_etc_hosts.handle('test', cfg, cc, LOG, [])
     contents = util.load_file('%s/etc/hosts' % self.tmp)
     if '127.0.1.1\tcloud-init.test.us\tcloud-init' not in contents:
         self.assertIsNone('No entry for 127.0.1.1 in etc/hosts')
     if '192.168.1.1\tblah.blah.us\tblah' not in contents:
         self.assertIsNone('Default etc/hosts content modified')
 def test_write_etc_hosts_suse_localhost(self):
     cfg = {
         "manage_etc_hosts": "localhost",
         "hostname": "cloud-init.test.us",
     }
     os.makedirs("%s/etc/" % self.tmp)
     hosts_content = "192.168.1.1 blah.blah.us blah\n"
     fout = open("%s/etc/hosts" % self.tmp, "w")
     fout.write(hosts_content)
     fout.close()
     distro = self._fetch_distro("sles")
     distro.hosts_fn = "%s/etc/hosts" % self.tmp
     paths = helpers.Paths({})
     ds = None
     cc = cloud.Cloud(ds, paths, {}, distro, None)
     self.patchUtils(self.tmp)
     cc_update_etc_hosts.handle("test", cfg, cc, LOG, [])
     contents = util.load_file("%s/etc/hosts" % self.tmp)
     if "127.0.1.1\tcloud-init.test.us\tcloud-init" not in contents:
         self.assertIsNone("No entry for 127.0.1.1 in etc/hosts")
     if "192.168.1.1\tblah.blah.us\tblah" not in contents:
         self.assertIsNone("Default etc/hosts content modified")
 def test_write_etc_hosts_suse_localhost(self):
     cfg = {
         'manage_etc_hosts': 'localhost',
         'hostname': 'cloud-init.test.us'
     }
     os.makedirs('%s/etc/' % self.tmp)
     hosts_content = '192.168.1.1 blah.blah.us blah\n'
     fout = open('%s/etc/hosts' % self.tmp, 'w')
     fout.write(hosts_content)
     fout.close()
     distro = self._fetch_distro('sles')
     distro.hosts_fn = '%s/etc/hosts' % self.tmp
     paths = helpers.Paths({})
     ds = None
     cc = cloud.Cloud(ds, paths, {}, distro, None)
     self.patchUtils(self.tmp)
     cc_update_etc_hosts.handle('test', cfg, cc, LOG, [])
     contents = util.load_file('%s/etc/hosts' % self.tmp)
     if '127.0.0.1\tcloud-init.test.us\tcloud-init' not in contents:
         self.assertIsNone('No entry for 127.0.0.1 in etc/hosts')
     if '192.168.1.1\tblah.blah.us\tblah' not in contents:
         self.assertIsNone('Default etc/hosts content modified')