Ejemplo n.º 1
0
    def __init__(self, path, name, partitioner=None, cassandra_dir=None, create_directory=True, cassandra_version=None, verbose=False):
        self.name = name
        self.nodes = {}
        self.seeds = []
        self.partitioner = partitioner
        self._config_options = {}
        self.__log_level = "INFO"
        self.__path = path
        self.__version = None
        if create_directory:
            # we create the dir before potentially downloading to throw an error sooner if need be
            os.mkdir(self.get_path())

        try:
            if cassandra_version is None:
                # at this point, cassandra_dir should always not be None, but
                # we keep this for backward compatibility (in loading old cluster)
                if cassandra_dir is not None:
                    self.__cassandra_dir = os.path.abspath(cassandra_dir)
                    self.__version = self.__get_version_from_build()
            else:
                dir, v = repository.setup(cassandra_version, verbose)
                self.__cassandra_dir = dir
                self.__version = v if v is not None else self.__get_version_from_build()

            if create_directory:
                common.validate_cassandra_dir(self.__cassandra_dir)
                self.__update_config()
        except:
            if create_directory:
                shutil.rmtree(self.get_path())
            raise
Ejemplo n.º 2
0
    def __init__(self, path, name, partitioner=None, cassandra_dir=None, create_directory=True, cassandra_version=None, verbose=False):
        self.name = name
        self.nodes = {}
        self.seeds = []
        self.partitioner = partitioner
        self._config_options = {}
        self.__log_level = "INFO"
        self.__path = path
        self.__version = None
        if create_directory:
            # we create the dir before potentially downloading to throw an error sooner if need be
            os.mkdir(self.get_path())

        try:
            if cassandra_version is None:
                # at this point, cassandra_dir should always not be None, but
                # we keep this for backward compatibility (in loading old cluster)
                if cassandra_dir is not None:
                    self.__cassandra_dir = os.path.abspath(cassandra_dir)
                    self.__version = self.__get_version_from_build()
            else:
                dir, v = repository.setup(cassandra_version, verbose)
                self.__cassandra_dir = dir
                self.__version = v if v is not None else self.__get_version_from_build()

            if create_directory:
                common.validate_cassandra_dir(self.__cassandra_dir)
                self.__update_config()
        except:
            if create_directory:
                shutil.rmtree(self.get_path())
            raise
Ejemplo n.º 3
0
 def set_cassandra_dir(self, cassandra_dir=None, cassandra_version=None, verbose=False):
     """
     Sets the path to the cassandra source directory for use by this node.
     """
     if cassandra_version is None:
         self.__cassandra_dir = cassandra_dir
         if cassandra_dir is not None:
             common.validate_cassandra_dir(cassandra_dir)
     else:
         dir, v = repository.setup(cassandra_version, verbose=verbose)
         self.__cassandra_dir = dir
     self.import_config_files()
     return self
Ejemplo n.º 4
0
 def set_cassandra_dir(self, cassandra_dir=None, cassandra_version=None, verbose=False):
     if cassandra_version is None:
         self.__cassandra_dir = cassandra_dir
         common.validate_cassandra_dir(cassandra_dir)
         self.__version = self.__get_version_from_build()
     else:
         dir, v = repository.setup(cassandra_version, verbose)
         self.__cassandra_dir = dir
         self.__version = v if v is not None else self.__get_version_from_build()
     self.__update_config()
     for node in self.nodes.values():
         node.import_config_files()
     return self
Ejemplo n.º 5
0
 def set_cassandra_dir(self, cassandra_dir=None, cassandra_version=None, verbose=False):
     """
     Sets the path to the cassandra source directory for use by this node.
     """
     if cassandra_version is None:
         self.__cassandra_dir = cassandra_dir
         if cassandra_dir is not None:
             common.validate_cassandra_dir(cassandra_dir)
     else:
         dir, v = repository.setup(cassandra_version, verbose=verbose)
         self.__cassandra_dir = dir
     self.import_config_files()
     return self
Ejemplo n.º 6
0
 def set_cassandra_dir(self, cassandra_dir=None, cassandra_version=None, verbose=False):
     if cassandra_version is None:
         self.__cassandra_dir = cassandra_dir
         common.validate_cassandra_dir(cassandra_dir)
         self.__version = self.__get_version_from_build()
     else:
         dir, v = repository.setup(cassandra_version, verbose)
         self.__cassandra_dir = dir
         self.__version = v if v is not None else self.__get_version_from_build()
     self.__update_config()
     for node in self.nodes.values():
         node.import_config_files()
     return self