from os import mkdir from os.path import expanduser, exists, join from configparser import ConfigParser from distutils.core import setup from setuptools import find_packages USER_HOME_DIR = expanduser("~") CML_DIR_NAME = ".cml" DEFAULT_LEARN_DIR = "data" CONFIG_FILE_NAME = "settings.ini" DEFAULT_TRAINING_SET = "c_toyset.csv" KNOWLEDGE_DIR = "knowledge" CML_CONFIG_DIR = join(USER_HOME_DIR, CML_DIR_NAME) CML_DEFAULT_LEARN_DIR = join(CML_CONFIG_DIR, DEFAULT_LEARN_DIR) CONFIG_FILE_PATH = join(CML_CONFIG_DIR, CONFIG_FILE_NAME) DEFAULT_TRAINING_SET_PATH = join(CML_DEFAULT_LEARN_DIR, DEFAULT_TRAINING_SET) KNOWLEDGE_DIR_PATH = join(CML_CONFIG_DIR, KNOWLEDGE_DIR) def create_cml_config_dir(): mkdir(CML_CONFIG_DIR) def create_data_dir(): mkdir(CML_DEFAULT_LEARN_DIR) def insert_default_settings_into_config_file(): config = ConfigParser() config.read(CONFIG_FILE_PATH) config["GENERAL"]["input_file"] = DEFAULT_TRAINING_SET_PATH config["GENERAL"]["learn_dir"] = CML_DEFAULT_LEARN_DIR config["GENERAL"]["knowledge_dir"] = KNOWLEDGE_DIR_PATH write_configs(config) def write_configs(config): with open(CONFIG_FILE_PATH, 'w') as configfile: config.write(configfile) if not exists(CML_CONFIG_DIR): create_cml_config_dir() PACKAGES = find_packages() setup( name="cml", version="0.1dev", packages=PACKAGES, data_files=[(CML_CONFIG_DIR, ["cml/static/settings.ini"]), (CML_DEFAULT_LEARN_DIR, ["cml/static/c_iris.csv", "cml/static/c_toyset.csv", "cml/static/double_toyset.csv", "cml/static/c_advertising.csv"]), ("cml/static", ["cml/static/logging.ini"])] ) insert_default_settings_into_config_file()