def Global__build(self): query = "Select deployment mode" options = ["development", "production"] default = "development" return read(query, options=options, default=default)
def get_default(self, section, variable): try: func_name = "%s__%s" % (section, variable) return getattr(self, func_name)() except AttributeError: query = "Enter value for %s.%s: " % (section, variable) return read(query)
def Database__password(self): if self.config.Database.engine == 'sqlite3': return "" query = "Select database password" default = self.config.project_name.translate(chars).lower() return read(query, default=default)
def Database__host(self): if self.config.Database.engine == 'sqlite3': return "" query = "Select database host" default = "localhost" return read(query, default=default)
def Database__db_user(self): if self.config.Database.db_engine == 'sqlite3': return "" query = "Select database user" default = "django_user" return read(query, default=default)
def Database__db_password(self): if self.config.Database.db_engine == 'sqlite3': return "" query = "Select database password" default = "django_password" return read(query, default=default)
def Database__port(self): if self.config.Database.engine == 'sqlite3': return "" query = "Select database port" default = "use %s default" % self.config.Database.engine value = read(query, default=default) return "" if value == default else value
def Database__db_name(self): if self.config.Database.db_engine == 'sqlite3': query = "Select path to database" default = "/tmp/db.sqlite3" else: query = "Select database name" default = "django_project" return read(query, default=default)
def Database__engine(self): query = "Select database engine" options = [ "postgresql_psycopg2", "postgresql", "sqlite3", "oracle", "mysql" ] default = "mysql" return read(query, options=options, default=default)
def Database__name(self): name = self.config.project_name.translate(chars) if self.config.Database.engine == 'sqlite3': query = "Select path to database" default = "/tmp/%s.sqlite3" % name else: query = "Select database name" default = name return read(query, default=default)
def clone(repo, dest, branch='master'): with settings(warn_only=True): result = run("git clone %s %s" % (repo, dest)) with cd(dest): run("git checkout %s" % branch) if result.failed: query = "Could not clone the project, do you want to delete the destination path and retry, just retry or abort?" options = ["delete", "retry", "abort", "ignore"] selected = read(query, options=options) if selected == "abort": sys.exit(1) elif selected == "ignore": return elif selected == "retry": clone(repo, dest, branch) elif selected == "delete": run("rm -rf %s" % dest) clone(repo, dest, branch)
def clone(repo, dest, branch='master'): with settings(warn_only=True): result = run("git clone %s %s" % (repo, dest)) with cd(dest): run("git checkout %s" % branch) if result.failed: query = "Could not clone the project, do you want to delete the destination path and retry, just retry or abort?" options = ["delete", "retry", "abort", "ignore"] selected = read(query, options=options) if selected == "abort": sys.exit(1); elif selected == "ignore": return elif selected == "retry": clone(repo, dest, branch) elif selected == "delete": run ("rm -rf %s" % dest) clone(repo, dest, branch)
def ApiServer__document_root(self): query = "Enter the document root path for the API server" default = "/home/%s/klooff-server" % self.env.user return read(query, default=default)
def ApiServer__certificates_dir(self): query = "Enter the certificates directory (relative to klooff-control root)" default = os.path.join(self.env.local_code_root, "configs", "certs", "stage") return read(query, default)
def WebServer__hostname(self): query = "Enter the web server hostname" default = "www.klooff.com" return read(query, default=default)
def ApiServer__hostname(self): query = "Enter the api server hostname" default = "api.klooff.com" return read(query, default=default)
def StaticServer__document_root(self): query = "Enter the document root path for the static server" default = "/home/%s/klooff-static" % self.env.user return read(query, default=default)
def Global__project_name(self): query = "Enter the project name" return read(query)
def Sentry__dsn(self): query = "Enter the DSN where sentry logs are to be sent" default = "http://*****:*****@localhost:9000/2" return read(query, default=default)
def StaticServer__ipaddress(self): query = "Enter the static server IP address for apache hostname configuration" default = "*" return read(query, default=default)
def Global__project_root(self): query = "Enter the project code root path" default = "/home/%s/%s" % (self.env.user, self.config.project_name) return read(query, default=default)
def Global__name(self): query = "Enter deployment name" return read(query)
def Database__config_name(self): query = "Select configuration name" default = "default" return read(query, default=default)
def StaticServer__hostname(self): query = "Enter the static server hostname" default = "static.klooff.com" return read(query, default=default)
def Global__user(self): query = "Select test virtuso user" default = "dba" return read(query, default=default)
def GitHub__password(self): query = "Enter Github password for user %s" % self.config.GitHub.username return read(query)
def Global__password(self): query = "Select test virtuso password" return read(query)
def Global__graph(self): query = "Select test graph name" default = "https://github.com/juanique/artichoke/test" return read(query, default=default)
def MySQL__root_password(self): query = "Enter MySQL root password" return read(query)
def Global__endpoint_path(self): query = "Select endpoint path" default = "/sparql" return read(query, default=default)
def StaticServer__certificates_dir(self): query = "Enter the Static ssl certificates directory" default = os.path.join(self.config.ApiServer.document_root, "configs", "certs", "static") return read(query, default)
def Global__host(self): query = "Select test virtuso host" default = "localhost" return read(query, default=default)
def GitHub__username(self): query = "Enter Github username" return read(query)
def Global__branch(self): query = "Enter the git branch for current project" default = "master" return read(query, default=default)
def Global__endpoint_port(self): query = "Select endpoint port" default = 8890 return read(query, default=default)