Example #1
0
    def test_generate_log_paths_for_node(self):
        cluster = self.create_env([{'roles': ['controller']}])
        node = cluster.nodes[0]
        prefix = "/var/log/remote"

        log_paths = logs_utils.generate_log_paths_for_node(node, prefix)
        self.assertItemsEqual(
            ['links', 'old', 'bak', 'new'],
            log_paths.keys())

        self.assertEqual(len(log_paths['links']), 1)
        self.assertEqual(
            "{prefix}/{node_ip}".format(prefix=prefix, node_ip=node.ip),
            log_paths['links'][0])
        self.assertEqual(
            "{prefix}/{node_ip}".format(prefix=prefix, node_ip=node.ip),
            log_paths['old'])
        fqdn = objects.Node.get_node_fqdn(node)
        self.assertEqual(
            "{prefix}/{node_fqdn}".format(
                prefix=prefix,
                node_fqdn=fqdn),
            log_paths['new'])
        self.assertEqual(
            "{prefix}/{node_fqdn}.bak".format(
                prefix=prefix,
                node_fqdn=fqdn),
            log_paths['bak'])
Example #2
0
    def test_delete_node_logs(self):
        prefix = tempfile.mkdtemp()
        self.addCleanup(shutil.rmtree, prefix)

        cluster = self.create_env([{'roles': ['controller']}])
        node = cluster.nodes[0]

        log_paths = logs_utils.generate_log_paths_for_node(node, prefix)

        link = log_paths['links'][0]
        os.symlink(log_paths['old'], link)

        folder = log_paths['new']
        os.mkdir(folder)

        file_ = log_paths['bak']
        with open(file_, 'w') as f:
            f.write("RANDOMCONTENT")

        logs_utils.delete_node_logs(node, prefix)

        self.assertTrue(
            all(not os.path.lexists(path) for path in [link, folder, file_]))