Fixed sql queries execution.

This commit is contained in:
Antoine Nguyen
2017-03-03 22:45:52 +01:00
parent 5de629cfd1
commit a9034fa738
3 changed files with 13 additions and 4 deletions

View File

@@ -61,6 +61,7 @@ class PostgreSQL(Database):
if dbname and dbuser: if dbname and dbuser:
self._setup_pgpass(dbname, dbuser, dbpassword) self._setup_pgpass(dbname, dbuser, dbpassword)
cmd += " -h {} -d {} -U {} -w".format(self.dbhost, dbname, dbuser) cmd += " -h {} -d {} -U {} -w".format(self.dbhost, dbname, dbuser)
query = query.replace("'", "'\"'\"'")
cmd = "{} -c '{}' ".format(cmd, query) cmd = "{} -c '{}' ".format(cmd, query)
utils.exec_cmd(cmd, sudo_user=self.dbuser) utils.exec_cmd(cmd, sudo_user=self.dbuser)
@@ -146,7 +147,8 @@ class MySQL(Database):
cmd = "mysql -h {} -u {} -p{}".format(self.dbhost, dbuser, dbpassword) cmd = "mysql -h {} -u {} -p{}".format(self.dbhost, dbuser, dbpassword)
if dbname: if dbname:
cmd += " -D {}".format(dbname) cmd += " -D {}".format(dbname)
utils.exec_cmd(cmd + """ -e "{}" """.format(query)) query = query.replace("'", "'\"'\"'")
utils.exec_cmd(cmd + """ -e '{}' """.format(query))
def create_user(self, name, password): def create_user(self, name, password):
"""Create a user.""" """Create a user."""

View File

@@ -18,4 +18,9 @@ def install(appname, config):
except ImportError: except ImportError:
print("Unknown application {}".format(appname)) print("Unknown application {}".format(appname))
sys.exit(1) sys.exit(1)
getattr(script, appname.capitalize())(config).run() try:
getattr(script, appname.capitalize())(config).run()
except utils.FatalError as inst:
utils.printcolor(utils.RED, "Failure")
print(inst)
sys.exit(1)

View File

@@ -109,10 +109,12 @@ class Modoboa(base.Installer):
self.config.get("amavis", "dbname") self.config.get("amavis", "dbname")
) )
] ]
utils.exec_cmd( code, output = utils.exec_cmd(
"bash -c '{} modoboa-admin.py deploy instance {}'".format( "bash -c '{} modoboa-admin.py deploy instance {}'".format(
prefix, " ".join(args)), prefix, " ".join(args)),
sudo_user=self.user, cwd=self.home_dir) sudo_user=self.user, cwd=self.home_dir)
if code:
raise utils.FatalError(output)
def get_packages(self): def get_packages(self):
"""Include extra packages if needed.""" """Include extra packages if needed."""
@@ -167,7 +169,7 @@ class Modoboa(base.Installer):
settings["modoboa_stats"]["logfile"] = path settings["modoboa_stats"]["logfile"] = path
settings = json.dumps(settings) settings = json.dumps(settings)
query = ( query = (
"UPDATE core_localconfig SET _parameters='\"'\"'{}'\"'\"'" "UPDATE core_localconfig SET _parameters='{}'"
.format(settings) .format(settings)
) )
self.backend._exec_query( self.backend._exec_query(